%@page import="com.hanweb.common.BaseInfo"%>
<%@page import="com.hanweb.common.util.NumberUtil"%>
<%@page import="com.hanweb.common.util.StringUtil"%>
<%@page import="com.hanweb.common.util.mvc.Script"%>
<%@page import="com.hanweb.jcms.plugins.search.service.Jcms_SearchBLF"%>
<%@page import="com.hanweb.jcms.service.info.ManagerDefBLF"%> <%@page import="com.hanweb.jcms.util.SafeUtil"%>
<%@page import="org.apache.commons.collections.CollectionUtils"%>
<%@ page import="java.io.File" %>
<%@ page import="java.util.List" %>
<%@page contentType="text/html;charset=UTF-8"%>
<%@ include file="config.jsp" %>
<%
//路径
String strSysPath = application.getRealPath("");
String strPath = strSysPath+File.separator
+"jcms_files"+File.separator
+"jcms"+strAppID+File.separator
+"web"+strWebID + File.separator
+"site"+File.separator;
String strModulePath = strPath +"module" + File.separator
+"search" + File.separator;
String strConfigPath = strModulePath + "config/config.xml";
String strWebType = StringUtil.getString( xmlFile.getContent("webtype",strConfigPath ));
/*动态加载词典类型的字段的options选项*/
String fieldname = SafeUtil.getSafeString(request.getParameter("fieldname"));
String fieldid = SafeUtil.getSafeString(request.getParameter("fieldid"));
int i_colid = NumberUtil.getInt(request.getParameter("i_colid"));
String strFrameName = SafeUtil.getSafeString(request.getParameter("framename"));
String[] strArrFieldName = fieldname.split(",");
String[] strArrFieldID = fieldid.split(",");
Jcms_SearchBLF blf = Jcms_SearchBLF.getInstance().init("1");
int i_fieldid = 0;
String vc_fieldname = "";
String strReturn = " var oOption = null;\n";
if(strArrFieldName.length > 0 && strArrFieldName.length == strArrFieldID.length){
boolean islawlass = false;
for(int i=0;i pField = blf.getPField(vc_fieldname);
boolean isTrue = false;
String strSourceInfoName = "";
if(CollectionUtils.isNotEmpty(pField)){
for(int nm = 0 ; nm < pField.size() ; nm++){
for(int nm2 = 0 ; nm2 < strArrFieldName.length ; nm2++){
String vc_fieldname2 = StringUtil.getString(strArrFieldName[nm2]);
String regEx2 = "field\\_[0-9]+";
boolean islawlass2 = vc_fieldname2.matches(regEx2);
if(vc_fieldname2.length() == 0 || !islawlass2)
continue;
int i_fieldid2 = NumberUtil.getInt(strArrFieldID[nm2]);
if(i_fieldid2 <= 0)
continue;
if(vc_fieldname2.equals(pField.get(nm))){
isTrue = true;
strSourceInfoName = vc_fieldname2;
}
}
}
}
if(isTrue){
ManagerDefBLF mBlf = ManagerDefBLF.getInstance();
mBlf.setProperties(i_colid);
String strSourceInfo = mBlf.getSourceInfo(strSourceInfoName); // 找出父级属性的来源表
strSourceInfo = StringUtil.getString(strSourceInfo);
if(StringUtil.isEmpty(strSourceInfo)) {
continue;
}
String strChildSrc = mBlf.getChildSrc(vc_fieldname); // 本属性来源表
strChildSrc = StringUtil.getString(strChildSrc);
String[] strArr1 = StringUtil.split(strChildSrc, ";");
if(strArr1[0].indexOf("@") != -1) {
continue;
}
if(strArr1 == null || strArr1.length < 2){
continue;
}
//获取来源栏目的ID
String strTable = StringUtil.getString(strArr1[0]);
String strField = StringUtil.getString(strArr1[1]);
int nPot = strField.indexOf("-");//如果是元数据栏目,,“-”后面是栏目ID
if(nPot != -1){
strField = strField.substring(0,nPot);
}
strArr1 = strTable.split("_");// strArr[2]为栏目id (jcms_webid_colid)
if(strArr1.length < 3){
continue;
}
String strCataid = StringUtil.getString(strArr1[2]);
String[][] strArr = mBlf.getField(strCataid, strSourceInfo, strField, strTable, "");
if(strArr != null && strArr.length > 0){
strReturn += "$(parent.document.body).find(\"select[name='"+vc_fieldname+"']\").empty();\n" ;
strReturn += "$(parent.document.body).find(\"select[name='"+vc_fieldname+"']\").html(\"";
for(int j=0;j请选择";
}
strReturn += "";
}
strReturn += "\");";
}
}else{
String[][] strArr = blf.getDickOptionArr(vc_fieldname,i_colid,i_fieldid);
if(strArr != null && strArr.length > 0){
strReturn += "$(parent.document.body).find(\"select[name='"+vc_fieldname+"']\").empty();\n" ;
strReturn += "$(parent.document.body).find(\"select[name='"+vc_fieldname+"']\").html(\"";
for(int j=0;j请选择";
}
strReturn += "";
}
strReturn += "\");";
}
}
}
}
Script script = Script.getInstanceOnly();
String jquerySitePath = BaseInfo.getContextPath() + "/jcms_files/jcms" + strAppID + "/web"+strWebID
+"/site/module/jslib/jquery/jquery.js";
if( strWebType.equals("2"))
{
jquerySitePath = "/module/jslib/jquery/jquery.js";
}
out.println("");
out.println(script.addScript(strReturn).getScript());
%>