﻿function onshowdbinfo( resid, flag )
{
 /*   if( obj == null )
    {
        return;
    }
    var dbname = obj.innerText;
   */ 
    obj = document.all.item( "dbinfo_" + resid );
    if( obj == null )
    {
        alert( "dbinfo_" + resid );
        return;
    }
    if( flag )
    {
        obj.style.left = window.event.clientX + document.body.scrollLeft+10;
        obj.style.top = window.event.clientY + document.body.scrollTop+10;
        obj.style.display = "block";
    }
    else
    {
        obj.style.display = "none";
    }
}
function showtr( str1, str2 )
{
	var obj = document.all.item( str1 );
	var obj2 = document.all.item( str2 );
	if( obj == null || obj2 == null )
	{
		return;
	}
	var str = obj.style.display;
	if( str == "none" )
	{
		obj.style.display = "block";
	}
	else if( str == "block" )
	{
		obj.style.display = "none";
	}
	str = obj2.src;
	if( str.indexOf( "Image/01.gif" ) != -1 )
	{
		obj2.src = "Image/02.gif";
	}
	else
	{
		obj2.src = "Image/01.gif";
	}
	window.top.dyniframesize();
}

function show( obj, flag )
{
	if( obj != null )
	{
		if( flag )
		{
			obj.style.display = "block";
		}
		else
		{
			obj.style.display = "none";
		}
	}	
}

function DeleteChild( index )
{
	var obj = document.all.item( "rowmax_" + index );
	if( obj == null )
	{
		return;
	}
	var iMax = parseInt( obj.value );
	obj = document.all.item( "num" );
	var num = parseInt( obj.value );
	if( (num + 1 ) > iMax )
	{
		return;
	}
	//找检索项 option(index)_1
	obj = document.all.item( "option" + index + "_1" );
	if( obj == null )
	{
		return;
	}
	var optionstr = obj.innerHTML;
	//找检索关系 ration(index)
	obj = document.all.item( "ration" + index );
	if( obj == null )
	{
		return;
	}
	var rationstr = obj.innerHTML;
	
	obj = document.all.item( "row" + index );
	var Html = "", temp = "";
	for( i = 1; i <= num; i ++ )
	{
		temp = index + "_" + i;
		if( Html != "" )
		{
			//加上新的检索条件
			Html += "<br><select name='ration";
			Html += temp;
			Html += "'>";
			Html += rationstr;
			Html += "</select>&nbsp;";
		}
		else
		{
			Html += "请选择&nbsp;&nbsp;&nbsp;";
		}
		Html += "<select style='width:100px' name='option";
		Html += temp;
		Html += "'>";
		Html += optionstr;
		Html += "</select>";
	}
	obj.innerHTML = Html;
}

function AddChild( index )
{
	var obj = document.all.item( "rowmax_" + index );
	if( obj == null )
	{
		return;
	}
	var iMax = parseInt( obj.value );
	obj = document.all.item( "num" );
	var num = parseInt( obj.value );
	if( num > iMax )
		return;
	//找检索项 option(index)_1
	obj = document.all.item( "option" + index + "_1" );
	if( obj == null )
	{
		return;
	}
	var optionstr = obj.innerHTML;
	//找检索关系 ration(index)
	obj = document.all.item( "ration" + index );
	if( obj == null )
	{
		return;
	}
	var rationstr = obj.innerHTML;
	
	//找要修改的地方
	obj = document.all.item( "row" + index );
	if( obj == null )
	{
		return;
	}
	var Html = obj.innerHTML;
	var temp = index + "_" + num;
	//加上新的检索条件
	Html += "<br><select name='ration";
	Html += temp;
	Html += "'>";
	Html += rationstr;
	Html += "</select>&nbsp;";
	Html += "<select style='width:100px' name='option";
	temp = index + "_" + num ;
	Html += temp;
	Html += "'>";
	Html += optionstr;
	Html += "</select>";
	obj.innerHTML = Html;
	obj = document.all.item( "option" + temp );
	var j = num;
	if( obj != null )
	{
		if( obj.options.length <= j - 1 )
		{
			obj.options.selectedIndex = obj.options.length - 1;
		}
		else
		{
			obj.options.selectedIndex = j-1;
		}
	}
}

function AddItem()
{
	var obj = document.all.item( "itemcount" );
	if( obj == null )
	{
		return;
	}
	for( var i = 0; i < parseInt( obj.value ); i ++ )
	{
		AddChild( i );
	}
}

function DeleteItem()
{
	var obj = document.all.item( "itemcount" );
	if( obj == null )
	{
		return;
	}
	for( var i = 0; i < parseInt( obj.value ); i ++ )
	{
		DeleteChild( i );
	}
}

function GetInterStr( obj1, obj2 )
{
	if( obj1 == "" || obj2 == "" )
	{
		return obj1 + obj2;
	}
	if( obj2.length > obj1.length )
	{
		temp = obj2;
		obj2 = obj1;
		obj1 = temp;
	}
	var fields = obj2.split( ',' );
	var retStr = "";
	for( var i = 0; i <fields.length; i ++ )
	{
		if( obj1.indexOf( fields[i]) != -1 )
		{
			retStr += ",";
			retStr += fields[i];
		}
	}
	return retStr;
}

function GetUniStr( fields, maps )
{
	var mapsArray = maps.split( ',' );
	var UniTemp = "";
	for( var i = 0 ; i < mapsArray.length; i ++ )
	{
		if( mapsArray[i].length == 0  )
		{
			continue;
		}
		if( fields.indexOf( mapsArray[i]) == -1 )
		{
			UniTemp += mapsArray[i];
		}
	}
	if( UniTemp != "" && UniTemp[UniTemp.length-1] != ',')
	{
		UniTemp += ",";
	}
	return UniTemp + fields;
}

function ModifyFields( retStr )
{
	if( retStr.length == 0 )
	{
		retStr = "默认";
	}
	var options = retStr.split( ',' );
	if( options.length == 0 )
	{
		options = new Array();
		options[0] = "默认";
	}
	var optionstr = "";
	for( var i = 0; i < options.length; i ++ )
	{
		if( options[i].length == 0 )
		{
			continue;
		}
		optionstr += "<option value=\"";
		optionstr +=  options[i];
		optionstr += "\">";
		optionstr += options[i];
		optionstr += "</option>";
	}
	if( optionstr == "" )
	{
		optionstr = "<option value='默认'>默认</option>";
	}
	var obj = document.all.item( "num" );
	if( obj == null )
	{
		return;
	}
	var temp = "";
	var index = parseInt( obj.value );
	for( var i = 1; i <= index; i ++ )
	{
		obj = document.all.item( "field" + i );
		if( obj != null )
		{
			temp = "<select style='width:80px' name='field" + i + "'>";
			temp += optionstr;
			temp += "</select>";
			obj.outerHTML = temp;
		}		
	}
}

function checkcells( obj )
{
	if( obj != null )
	{
		OnSelect( obj );
	}
	
	var obj = document.all.item( "itemcount" );
	if( obj == null )
	{
		return;
	}

	//根据
	var retStr = "";
	var mapStr = "";
	var fieldStr = "";
	var itemcount =  parseInt( obj.value );
	for( var i = 0; i < itemcount; i ++ )
	{
		obj = document.all.item( "check_" + i );
		if( obj == null )
		{
			continue;
		}
		if( !obj.checked )
		{
			continue;
		}
		obj = document.all.item( "myfield_" + i );
		if( obj == null )
		{
			continue;
		}
		fieldStr = obj.value;
		obj = document.all.item( "mapfield_" + i );
		if( obj == null )
		{
			continue;
		}
		mapStr = obj.value;
		
		retStr = GetInterStr( retStr, mapStr );//GetUniStr( fieldStr, mapStr ) );	
	}
	ModifyFields( retStr );
}

function DeleteFields()
{
	var obj = document.all.item( "num" );
	if( obj == null )
	{
		return;
	}
	var index = parseInt( obj.value );
	if( index <= 1 )
	{
		return;
	}
	var obj1 = document.all.item( "field1" );
	if( obj1 == null )
	{
		return;
	}	
	var options = obj1.innerHTML;
	var str = "";
	for( var i = 1; i < index; i ++ )
	{
		if( str.length != 0 )
		{
			str += "<br>";
			str += "<select name='ration";
			str += i;
			str += "'><option value='AND'>AND</option><option value='OR'>OR</option><option value='NOT'>NOT</option></select>";
		}
		else
		{
			str += "请选择：";
		}
		str += "<select name='field";
		str += i;
		str += "'>";
		str += options;
		str += "</select>";
		str += "<input type='text' class=input_text name='word";
		str += i;
		str += "' style='width:304px'>";
	}
	obj.value = index - 1;
	obj = document.all.item( "field" );
	if( obj == null )
	{
		return;
	}
	obj.innerHTML = str;
	for( var j = 1; j < index; j ++ )
	{
		obj = document.all.item( "field" + j );
		if( obj != null )
		{
			if( obj.options.length <= j - 1 )
			{
				obj.options.selectedIndex = obj.options.length - 1;
			}
			else
			{
				obj.options.selectedIndex = j-1;
			}
		}
	}
	obj = document.all.item( "max" );
	var max = parseInt( obj.value );
	show( document.all.item( "delete" ), index - 1 > 1 );
	show( document.all.item( "add" ), index - 1 < max );
	window.parent.dyniframesize();
}

function AddFields()
{
	var obj = document.all.item( "num" );
	if( obj == null )
	{
		return;
	}
	var index = obj.value;
	obj = document.all.item( "field" );
	if( obj == null )
	{
		return;
	}
	var str = obj.innerHTML;
	var newindex = parseInt( index ) + 1;
	var obj1 = document.all.item( "field1" );
	if( obj1 == null )
	{
		return;
	}
	var options = obj1.innerHTML;
	str += "<br><select name='ration";
	str += newindex;
	str += "'><option value='AND'>AND</option><option value='OR'>OR</option><option value='NOT'>NOT</option></select>"
	str += "<select style='width:80px' name='field";
	str += newindex;
	str += "'>";
	str += options;
	str += "</select><input class='input_text' style='WIDTH: 304px'  type='text' value='' name='word";
	str += newindex;
	str += "'>";
	obj.innerHTML = str;
	obj = document.all.item( "field" + newindex );
	var j = newindex;
	if( obj.options.length <= j - 1 )
	{
		obj.options.selectedIndex = obj.options.length - 1;
	}
	else
	{
		obj.options.selectedIndex = j-1;
	}
	obj = document.all.item( "num" );
	
	obj.value = newindex;
	
	obj = document.all.item( "max" );
	if( obj == null )
	{
		return;
	}
	var max = parseInt( obj.value );
	show( document.all.item( "add" ), newindex < max );
	show( document.all.item( "delete" ), newindex > 1 );
	window.parent.dyniframesize();
}

function Add()
{
	var obj = document.all.item( "num" );
	if( obj == null )
	{
		return;
	}
	var index = obj.value;
	obj = document.all.item( "field" );
	if( obj == null )
	{
		return;
	}
	var str = obj.innerHTML;
	var newindex = parseInt(index) + 1;

	str += "<br>检索词";
	str += newindex;
	str += "：<input type='text' class=input_text name='field";
	str += newindex;
	str += "' style='width:304px'>";
	obj.innerHTML = str;
	obj = document.all.item( "num" );
	obj.value = newindex;
	
	obj = document.all.item( "max" );
	if( obj == null )
	{
		return;
	}
	var max = parseInt( obj.value );
	show( document.all.item( "add" ), newindex < max );
	show( document.all.item( "delete" ), newindex > 1 );
	AddItem();
	window.parent.dyniframesize();
}
function Delete()
{
	var obj = document.all.item( "num" );
	if( obj == null )
	{
		return;
	}
	var index = parseInt( obj.value );
	if( index <= 1 )
	{
		return;
	}

	var str = "";
	for( var i = 1; i < index; i ++ )
	{
		if( str.length != 0 )
		{
			str += "<br>";
		}
		str += "检索词";
		str += i;
		str += "：<input type='text' class=input_text name='field";
		str += i;
		str += "' style='width:304px'>";
	} 
	obj.value = index - 1;
	obj = document.all.item( "field" );
	if( obj == null )
	{
		return;
	}
	obj.innerHTML = str;
	obj = document.all.item( "max" );
	var max = parseInt( obj.value );
	show( document.all.item( "delete" ), index - 1 > 1 );
	show( document.all.item( "add" ), index - 1 < max );
	DeleteItem();
	window.parent.dyniframesize();
}

function begin()
{
	var obj = document.all.item( "num" );
	if( obj == null )
	{
		return;
	}
	var num = parseInt( obj.value );
	obj = document.all.item( "max" );
	var max = parseInt( obj.value );
	show( document.all.item( "delete" ), num > 1 );
	show( document.all.item( "add" ),  num < max );
}