//
// only used for Common.js
//
var js_Return;
var szJsReturnDelimiter = "!!";
var szJsReturnItemDelimiter = "==";

function commAnalyzeJsReturn( jsReturn )
{
	var tmpval, tmpval2;
	var aryRet;
	var aryHirerlayer;  //zdy add 2000-08-14 
	js_Return = jsReturn;
	aryRet = commSplit( jsReturn, szJsReturnDelimiter );

	//
	//		设置全局 JavaScript 变量
	//
	//
	// 如果本页面改变了Geoset，需要改变JS变量的值
	//
	// 图层列表
	tmpval = commGetItemFromRet( aryRet, "LayerList", szJsReturnItemDelimiter );
	if( tmpval != "" )
		strLayerList = tmpval;
	//
	// 企业基本类型列表
	tmpval = commGetItemFromRet( aryRet, "BasicFirmType", szJsReturnItemDelimiter );
	if( tmpval != "" )
		szBasicFirmType = tmpval;
	//
	// 距离列表
	tmpval = commGetItemFromRet( aryRet, "DistanceList", szJsReturnItemDelimiter );
	if( tmpval != "" )
		strDistanceList = tmpval;
 	//			
 
	//
	//		Boolean 类型变量，用以控制相应的工具是否显示
	//
	//
	// 是否支持公交换乘
	tmpval = commGetItemFromRet( aryRet, "isGJ", szJsReturnItemDelimiter );
	if( tmpval != "" )
		blGJ = (tmpval == "True" ? true : false);
	//
	// 是否支持最短路径（或曰：行车路线）
	tmpval = commGetItemFromRet( aryRet, "isShortLine", szJsReturnItemDelimiter );
	if( tmpval != "" )
		blShortLine = (tmpval == "True" ? true : false);
    //
    // 是否变换了Geoset  zdy add 2000-08-15 
	tmpval = commGetItemFromRet( aryRet, "isChangeGeoset", szJsReturnItemDelimiter );
	if( tmpval != "" )
		blChangeGeoset = (tmpval == "True" ? true : false);
		

	// hidden parameters
	//aryHiddenParam = commGetSubmitHidden( aryRet, szJsReturnItemDelimiter );
	// 租用者 ID 
	szHirerID = commGetItemFromRet( aryRet, "HirerID", szJsReturnItemDelimiter );
	// 当前城市
	szMasterCity = commGetItemFromRet( aryRet, "hidden_MasterCity", szJsReturnItemDelimiter );
	// 当前 Geoset
	szGeoset = commGetItemFromRet( aryRet, "hidden_CurrentCity", szJsReturnItemDelimiter );
	// 上次工具
	szLastMaptool = commGetItemFromRet( aryRet, "hidden_MapTool", szJsReturnItemDelimiter );
	// 上次地图视野
	//szMapZoom = commGetItemFromRet( aryRet, "hidden_MapZoom", szJsReturnItemDelimiter );
	// 上次 Username 和 Userpwd
	//szUsername = commGetItemFromRet( aryRet, "UserName", szJsReturnItemDelimiter );
	//szUserpwd = commGetItemFromRet( aryRet, "UserPWD", szJsReturnItemDelimiter );


	//
	//		设置地图大小
	//
	//
	// 地图的宽度和高度
	//@tmpval = commGetItemFromRet( aryRet, "hidden_MapImageWidth", szJsReturnItemDelimiter );
	//@tmpval2 = commGetItemFromRet( aryRet, "hidden_MapImageHeight", szJsReturnItemDelimiter );
	if( tmpval != "" && tmpval2 != "" ) {
		//lcResetLayerAfterResizeImg( tmpval, tmpval2 );
		//恢复滑轨
		//lcResetLayerBar( tmpval, tmpval2 );
	}
	
	
	////////	EEye Variant	//////////
	//tmpval = commGetItemFromRet( aryRet, "EagleEyeResult", szJsReturnItemDelimiter );
	//if( tmpval != '' ) lcEEyeLayer(tmpval);
	
	
	// 取出地图的地址，如果有变化则显示地图image
	//@tmpval = commGetItemFromRet( aryRet, "MapImageURL", szJsReturnItemDelimiter );
	//@if( tmpval != "" ) {
		//@lcChangeImgSrc( tmpval );
		//@imgSrc = tmpval;
	//@}
	//
	// 取出返回结果，并显示
	tmpval = commGetItemFromRet( aryRet, "Result", szJsReturnItemDelimiter );
	tmpval2 = commGetItemFromRet( aryRet, "ResultInfo", szJsReturnItemDelimiter );
	if( tmpval != "" || tmpval2 != "" )
		interDisplayResultInfoPage( tmpval, tmpval2, aryOutputPlace, frmMappage, frmOprtpage );//****
		//
	//v6
	tmpval = commGetItemFromRet( aryRet, "QueryResult", szJsReturnItemDelimiter );
	tmpval2 = commGetItemFromRet( aryRet, "QueryResultDesc", szJsReturnItemDelimiter );
	if( tmpval != "" || tmpval2 != "" )
	{
		tmpval = tmpval.replace( /\'/g, " " );
		//frmInfopage.interParseQueryResult(tmpval,tmpval2)
		//frmInfopage.interDisplayResultInfoPage( tmpval, tmpval2, aryOutputPlace, frmMappage, frmOprtpage );
		
       // if(szLastMaptool=="FuzzyQuery" || ){
		   if(tmpval2.split(",")[4]!="Middle"){
				 var fqTemp
					 switch (szLastMaptool)
					 {
					 case 'SearchRange':
							fqTemp="ListMaptools=ShowInfoPage,HighLight,ShowGJCZList,murl,purl;ListImages=infoicon2.gif,,busstation.gif,ditu.gif,yemian.gif;Type=list;Title=查询结果;Head=查询结果太多，只列出前 ";
					        fqTemp = fqTemp+ tmpval2.split(",")[3] + " 条记录符合查询条件'"+document.all.txtMH.value+"'。;Tail=";
						 break;
					 default:
						 fqTemp="ListMaptools=ShowInfoPage,HighLight,ShowGJCZList,murl,purl;ListImages=infoicon2.gif,,busstation.gif,ditu.gif,yemian.gif;Type=list;Title=查询结果;Head=共有";
					     fqTemp = fqTemp+ tmpval2.split(",")[2] + "条在地图查找范围内的记录。;Tail=";
						 break;
					 }

				 var aryT=tmpval.split(";");
				 var sLyName=""
				 var pLy=0
				 var FinalArray=new Array
				 for (i=0;i<aryT.length ;i++ )
				 {
					 var aryT2=aryT[i].split(",")
					 
					 if(i==0){
							sLyName=aryT2[0];
							FinalArray[pLy]=aryT2[0]+",,,,,,,,,";
							pLy++;
							FinalArray[pLy]=",,"+aryT2[2]+",LayerName~~"+aryT2[0]+"%%FIDs~~"+aryT2[1]+",,,,,,";
							pLy++;
					 }else{
					
					 if (aryT2[0]!="")
					 {
							sLyName=aryT2[0];
							FinalArray[pLy]=aryT2[0]+",,,,,,,,,";
							pLy++;
							FinalArray[pLy]="一般信息,LayerName~~"+aryT2[0]+"%%FIDs~~"+aryT2[1]+","+aryT2[2]+",LayerName~~"+aryT2[0]+"%%FIDs~~"+aryT2[1]+",,,,,,";
							pLy++;
					 }else{
							FinalArray[pLy]="一般信息,LayerName~~"+sLyName+"%%FIDs~~"+aryT2[1]+","+aryT2[2]+",LayerName~~"+sLyName+"%%FIDs~~"+aryT2[1]+",,,,,,";
							pLy++;
					 }
					}
				 }
				 tmpval=FinalArray.join(";");
				 interDisplayResultInfoPage( tmpval, fqTemp, aryOutputPlace, frmMappage, frmOprtpage );
		}
		if(tmpval2.split(",")[4]=="Middle" && szLastMaptool=="FindNearest"){
				 var fqTemp="Type=select;Title=查找最近;Head=共有 "+tmpval2.split(",")[3]+" 条记录符合查询条件，请进一步指定是哪一个\""+FindNearestName+"\"。;Tail=";
				 var aryT=tmpval.split(";");
				 var sLyName=""
				 var pLy=0
				 var FinalArray=new Array
				 for (i=0;i<aryT.length ;i++ )
				 {
					 var aryT2=aryT[i].split(",")
					 if (aryT2[0]!="")
					 {
							sLyName=aryT2[0];
					 }

					 FinalArray[i]="请选择查询信息," +sLyName.split("_")[1]+" - "+aryT2[2]+",LayerName~~"+sLyName+"%%FIDs~~"+aryT2[1]+"%%ObjectLayers~~"+FindNearestLayer+"%%ObjectString~~%%ShowMap~~";
				 }
				 tmpval=FinalArray.join(";");
				 interDisplayResultInfoPage( tmpval, fqTemp, aryOutputPlace, frmMappage, frmOprtpage );

		}
	}
	//公交换乘
	tmpval = commGetItemFromRet( aryRet, "QueryBusTransferResultDesc", szJsReturnItemDelimiter );
	tmpval2 = commGetItemFromRet( aryRet, "QueryBusTransferResult", szJsReturnItemDelimiter );
	if( tmpval.split(",")[0] == "Middle") {
		var s1="";
		var s2="";
		var aryT=new Array;
		var aryT2=new Array;
		var aryTemp=new Array;
		var sLy="";
		aryT=tmpval.split(",");
		s2="Type=";
		switch(aryT[0]){
			case 'Middle':
				s2+="select;";
				s2+="Title=公交换乘;Head=起点和/或终点不唯一，请确认。;Tail=";
				break;
			case 'Final':
				s2+="QueryGJRoute;";
				break;
			default:
				break;
		}
		if(parent.gjMothed!="")
		{
			gjmoth=parent.gjMothed;
			parent.gjMothed="";
		}

		aryT2=tmpval2.split(";");
		for (i=0;i<aryT2.length ;i++ )
		{	
			aryTemp=aryT2[i].split(",");
			sLy=aryTemp[0].split("_")[1];
			if(i<parseInt(aryT[1]))
			{
				if(i!=0){
					s1=s1+";"
				}
				s1 = s1+"起点,"+sLy+" - "+aryTemp[2]+",S_LYR~~"+aryTemp[0]+"%%S_FID~~"+aryTemp[1]+"%%S_NAME~~"+aryTemp[2]+"%%Method~~"+szGJmothed;
			}else{
				s1 = s1+";"+"终点,"+sLy+" - "+aryTemp[2]+",E_LYR~~"+aryTemp[0]+"%%E_FID~~"+aryTemp[1]+"%%E_NAME~~"+aryTemp[2]+"%%Method~~"+szGJmothed;
			}
		}
		frmInfopage.interDisplayResultInfoPage( s1, s2, aryOutputPlace, frmMappage, frmOprtpage );
	}
	if (tmpval.split(",")[0] == "Final")
	{
		interQueryBusTransferResult(tmpval,tmpval2);
	}
	// 如果本页面产生了Wizard，则显示
	tmpval = commGetItemFromRet( aryRet, "WizardInfo", szJsReturnItemDelimiter );
	tmpval2 = commGetItemFromRet( aryRet, "WizardOprt", szJsReturnItemDelimiter );
//	if( tmpval != "" || tmpval2 != ""  )
//		wizDisplayWizardC( tmpval, tmpval2 );
	//
	// 显示调试信息
	tmpval = commGetItemFromRet( aryRet, "hidden_debug", szJsReturnItemDelimiter );
	if( tmpval != "" ) {
		tmpval = commChangeLinkChar(tmpval);
		alert( tmpval.replace(/;/g, "\n") );
	}
	//
	// 显示错误或警告信息
	tmpval = commGetItemFromRet( aryRet, "AlertMessage", szJsReturnItemDelimiter );
	if( tmpval != "" )
		alert( tmpval );
}

function commSplit( strRet, delimiter )
{
	var aryRet;
	aryRet = strRet.split(delimiter);
	return aryRet;
}

function commGetSubmitHidden( aryRet, delimiter ) 
{
	var szHidden  = "hidden_MapZoom,hidden_MapCenterX,hidden_MapCenterY,hidden_MapImageWidth,hidden_MapImageHeight,hidden_MasterCity,hidden_CurrentCity,hidden_UserID";
	var aryHidden = szHidden.split( "," );
	var nHiddens  = aryHidden.length;
	var i;

	for( i=0; i < nHiddens; ++i )
		aryHidden[i] += "=" + commGetItemFromRet( aryRet, aryHidden[i], delimiter );
	return aryHidden;
}

function commGetItemFromRet( aryRet, name, delimiter ) 
{
	var aryTmp;
	for( i=0; i < aryRet.length; ++i ) {
		aryTmp = aryRet[i].split( delimiter );
		if(aryTmp[0] == name)
			return aryTmp[1];
	} 
	return "";
}

function commGetItemFromJsReturn( name )
{
	var aryRet;
	aryRet = commSplit( js_Return, szJsReturnDelimiter );
	return( commGetItemFromRet( aryRet, name, szJsReturnItemDelimiter ) );
}

function commChangeLinkChar( src )
{
	var tmp;
	tmp = src.replace( /~~/g, "==" );
	tmp = tmp.replace( /%%/g, "!!" );
	tmp = tmp.replace( /#col#/g, "," );
	tmp = tmp.replace( /#row#/g, ";" );
	return tmp;
}

function commGenrandom()
{
	var seed_adv = 100000000;
	return Math.round( Math.random() * seed_adv );
}

// 生成图层列表
function commGenLayerList00( szNameList )
{
	var aryAllLayer;
	var szList = "";
	var szName = "";
	var szLayer;

	if( szNameList != "" ) {
		aryAllLayer = commSplit( szNameList, "," );
		for( i=0; i < aryAllLayer.length; ++i ) {
			szLayer = aryAllLayer[i];
			if( szLayer == "全部单位" )
				szList += '<option value="全部">' + szLayer;
			else  if( szLayer.indexOf("月票发售点") <= 1 && szLayer.indexOf("公交派出所") <= 1 && szLayer.indexOf("公交车服务") <= 1 && szLayer.indexOf("公交线路") <= 1){
				szName = szLayer.substr( szLayer.indexOf( "_" ) + 1 );
				szList += '<option value="' + szLayer +'">' + szName;
			}
		}
	}
	else
		szList = "<option value=\"全部\">全部单位";
	return szList;
}

function commGenLayerList( szNameList )
{
	var aryAllLayer;
	var szList = "";
	var szName = "";
	var szLayer;

	if( szNameList != "" ) {
		aryAllLayer = commSplit( szNameList, "," );
		for( i=0; i < aryAllLayer.length; ++i ) {
			szLayer = aryAllLayer[i];
			if( szLayer == "全部单位" )
				szList += '<option value="全部">' + szLayer;
			else {
				szName = szLayer.substr( szLayer.indexOf( "_" ) + 1 );
				szList += '<option value="' + szLayer +'">' + szName;
			}
		}
	}
	else
		szList = "<option value=\"全部\">全部单位";
	return szList;
}

// 返回一个数组，600*800 系数 1 、1024*768 系数 1.28 1280*1024 系数 1.6
function commCurSize()
{
	var theArray = new Array();
	if( width == 500 ) theArray[0] = "checked";
	if( width == 640 ) theArray[1] = "checked";
	if( width == 800 ) theArray[2] = "checked";
		
	return theArray;
}


// 生成距离范围列表
function commGenDistanceList()
{
	return strDistanceList;
}

//
//	请在 mappage.htm 页面或与其等价的页面的函数 WindowLoaded() 中调用
//		commSetGlobalFrame();
//
function commSetGlobalFrameVars( frmOutput )
{
	frmMappage  = this;
	frmOprtpage = this;
	frmInfopage = this;
}



