%@page import="com.hanweb.common.util.NumberUtil"%>
<%@page import="com.hanweb.common.util.SpringUtil"%>
<%@page import="com.hanweb.common.util.StringUtil"%>
<%@page import="com.hanweb.common.util.file.IFileUtil"%>
<%@page import="com.hanweb.common.util.file.LocalFileUtil"%>
<%@page import="com.hanweb.common.util.mvc.Script"%>
<%@page import="com.hanweb.jcms.build.service.makepage.MakeArticleMultiPage"%>
<%@page language="java" contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"%>
<%@page import="com.hanweb.jcms.build.service.makepage.ModalFile"%>
<%@page import="com.hanweb.jcms.build.service.makeunit.CurrentPlace"%>
<%@page import="com.hanweb.jcms.dao.InfoDimensionDAO"%>
<%@page import="com.hanweb.jcms.plugins.search.service.Jcms_SearchBLF"%>
<%@page import="com.hanweb.jcms.service.column.Jcms_CataloginfoBLF"%>
<%@page import="com.hanweb.jcms.service.column.Jcms_FieldinfoBLF"%>
<%@page import="com.hanweb.jcms.service.dimension.DimensionBLF"%>
<%@page import="com.hanweb.jcms.service.modal.Parser"%>
<%@page import="com.hanweb.jcms.service.plugin.Jcms_Extramodal_ModalBLF"%>
<%@page import="com.hanweb.jcms.service.website.Jcms_WebinfomationBLF"%>
<%@page import="com.hanweb.jcms.util.AccessUtil"%>
<%@page import="com.hanweb.jcms.util.SafeUtil"%>
<%@page import="com.hanweb.jcms.util.xml.XMLProperties2"%>
<%@page import="org.apache.commons.logging.Log"%>
<%@page import="org.apache.commons.logging.LogFactory"%>
<%@page import="java.io.File"%>
<%@page import="java.io.FileWriter"%>
<%@page import="java.io.IOException"%>
<%@page import="java.io.Writer"%>
<%@page import="java.net.URLEncoder"%>
<%@page import="java.text.ParseException"%>
<%@page import="java.text.SimpleDateFormat"%> <%@page import="java.util.*"%>
<%@ page import="java.net.URLDecoder" %>
<%@ page import="com.hanweb.common.BaseInfo" %>
<%@ page import="com.hanweb.jcms.entity.*" %>
<%@ page import="com.hanweb.jcms.service.info.Jcms_InforefBLF" %>
<%@ page import="com.hanweb.jcms.util.HttpUrl" %>
<%@page contentType="text/html;charset=UTF-8" %>
<%@ include file="config.jsp" %>
<%!
public boolean canAccess(String strPara){
if(StringUtil.getString(strPara).length()<=0){
return true;
}
boolean bl = true;
strPara = strPara.toLowerCase();
if (strPara.indexOf("%")>=0 || strPara.indexOf("|")>=0 || strPara.indexOf("+")>=0
|| strPara.indexOf("&")>=0 || strPara.indexOf("alert")>=0 || strPara.indexOf("script")>=0
|| strPara.indexOf("\"")>=0 || strPara.indexOf("\'")>=0 || strPara.indexOf("<")>=0
|| strPara.indexOf("set")>=0 || strPara.indexOf("exec")>=0 || strPara.indexOf("delete")>=0
|| strPara.indexOf("update")>=0 || strPara.indexOf("declare")>=0 || strPara.indexOf("cast")>=0){
bl = false;
}
return bl;
}
%>
<%
request.setCharacterEncoding("UTF-8");
Script script = Script.getInstanceOnly();
if(!AccessUtil.checkAccess(request)){ //阻止跨站点请求伪造
out.print(script.addScript("location.href='../../';").getScript());
return;
}
Log logger = LogFactory.getLog(getClass());
//得到要查询的字段名及字段类型
String strField = SafeUtil.getSafeString(request.getParameter("field"));
//得到定制查询的类别
String currentPlace = SafeUtil.getSafeString(request.getParameter("currentplace"));
//得到定制查询当前位置分隔符
String splitFlag = SafeUtil.getSafeString(request.getParameter("splitflag"));
if(StringUtil.equals(splitFlag, "")){
splitFlag = ">>";
}
//得到定制查询当前位置是否取全路径
int fullPath = NumberUtil.getInt(request.getParameter("fullpath"), 0);
int unitId = NumberUtil.getInt(request.getParameter("unitId"));
if( strField.length() <= 0 || !canAccess(strField))
{
out.println("传入参数有误" );
return;
}
//要检索的栏目ID
String CataID = SafeUtil.getSafeString(request.getParameter("i_columnid"));
boolean isMeta = false;
int nCataID = 0;
Jcms_CataloginfoEntity cataEn = null;
int styleid = 0 ;
if(CataID.indexOf("_")!=-1){
String[] dataMe = StringUtil.split(CataID, "_");
styleid = NumberUtil.getInt(dataMe[1]);
isMeta = true;
}else{
nCataID = NumberUtil.getInt(CataID);
isMeta = false;
}
if(!isMeta){
Jcms_CataloginfoBLF catablf = Jcms_CataloginfoBLF.getInstance().init(strAppID, strWebID);
cataEn = catablf.getEntity(nCataID);
}
//获取当前位置
String columnLevel = "";//栏目层次结构
String strCurrentPlace = "";
CurrentPlace curPlaceObj = CurrentPlace.getInstance().init(strAppID);
Vector vCol = new Vector();
if(!isMeta){
List catalogList = curPlaceObj.findCatalogList(nCataID);
if(catalogList != null && catalogList.size() > 0){
for (Jcms_CataloginfoEntity catalog : catalogList) {
columnLevel = columnLevel + splitFlag + "" + catalog.getVc_cataname() + "";
}
}
}
if(currentPlace != null) {
currentPlace = splitFlag + currentPlace;
}
if(fullPath == 1) {
strCurrentPlace = columnLevel + currentPlace;
} else {
strCurrentPlace = currentPlace;
}
if(!isMeta){
if( cataEn == null ){
out.println("未指定要查询的栏目" );
return;
}
}
int i_style = 0;
String strTableName = "";
if(!isMeta){
i_style = cataEn.getI_style();
if(i_style!=3&&i_style!=6&&i_style!=7){
out.println("栏目类型错误!" );
}
strTableName = cataEn.getVc_tablename();
if( strTableName.length() == 0 )
{
out.println("表不存在!" );
return;
}
}else{
i_style = 7;
strTableName = "jcms_" + styleid;
}
//String strKeyWord = Convert.getParameter( request,"vc_keyword" );
//当前页页码
int nCurrentPage = NumberUtil.getInt(request.getParameter("currpage"),1 ) ;
//将字段转化成字段数组
String[] strArrField = StringUtil.getString(strField).split(",");;
if( strArrField == null && strArrField.length <= 0 )
{
logger.error("查询字段或字段类型不正确");
return;
}
//定义对象
Jcms_SearchBLF blf = Jcms_SearchBLF.getInstance().init(strAppID, NumberUtil.getInt(strWebID));
StringBuffer sbWhereSql = new StringBuffer(256);
StringBuffer esWhereSql = new StringBuffer(256);
StringBuffer sbHidden = new StringBuffer(256);
String strListPath = "./index.jsp?unitId="+unitId+"&field="+strField+"&i_columnid="+CataID;
// 路径
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 strFieldPath = "";
if(!isMeta){
// 旧的模板,暂时兼容一下。
if(NumberUtil.getInt(unitId) == 0){
strFieldPath = strModulePath + "config/field_"+nCataID+".xml";
} else{
strFieldPath = strModulePath + "config/field_"+unitId+".xml";
}
}else{
if(NumberUtil.getInt(unitId) == 0){
strFieldPath = strModulePath + "config/field_metadata_"+styleid+".xml";
} else{
strFieldPath = strModulePath + "config/field_metadata_"+unitId+".xml";
}
}
String strConfigPath = strModulePath + "config/config.xml";
// 得到配置文件中要查询的字段名
File file = new File( strFieldPath );
if( !file.exists() ){
out.println("配置文件不存在");
}
String strWebType = StringUtil.getString( xmlFile.getContent("webtype",strConfigPath ));
String strWeb_in_servername = StringUtil.getString(xmlFile.getContent("web_in_servername",strConfigPath ));
String strCol = xmlFile.getContent("col", strFieldPath );
strCol= strCol==null?"1":strCol.trim() ;
int ordertype = NumberUtil.getInt(xmlFile.getContent("ordertype", strFieldPath ),0);
String strRow = xmlFile.getContent("row", strFieldPath );
strRow = strRow==null?"1":strRow.trim();
String strScript = xmlFile.getContent("script", strFieldPath );
strScript = strScript==null?"":strScript;
//第页显示信息条数
int nPageCount = NumberUtil.getInt( strRow ) * NumberUtil.getInt( strCol );
/*****************************************
0、整数类型 5、动画类型
1、文字类型 6、附件类型
2、小数类型 7、视频类型
3、日期类型 8、长字段类型
4、图片类型 9、词典类型
******************************************/
XMLProperties2 xmlparse = new XMLProperties2( file );
String[][] strNotesInfo = xmlparse.getNotesInfo("dahan.field","vc_fieldname,vc_name,vc_fieldtype");
String strSearch = "";
if(isMeta){
strSearch = ",i_cataid";
}
for( int i=0; strNotesInfo != null && i0 && strEndValue.length() <=0 )
{
sbWhereSql.append( " AND a."+strControlName+">= :strStartValue");
esWhereSql.append(" AND ").append(strControlName).append(" :[ ").append(strStartValue).append(" TO * ]");
map.put("strStartValue", strStartValue);
}
else if (strStartValue.length() > 0)
{
sbWhereSql.append( " AND a."+strControlName+">= :strStartValue"
+ " AND a." + strControlName +"<= :strEndValue" );
esWhereSql.append(" AND ").append(strControlName).append(" :[ ").append(strStartValue).append(" TO ").append(strEndValue).append(" ]");
map.put("strStartValue",strStartValue);
map.put("strEndValue",strEndValue);
}
else if(strEndValue.length() > 0)
{
sbWhereSql.append( " AND a."+strControlName+"<= :strEndValue " );
esWhereSql.append(" AND ").append(strControlName).append(" :[ * TO ").append(strEndValue).append(" ]");
map.put("strEndValue",strEndValue);
}
sbHidden.append("");
strListPath += "&"+strControlName+"_start="+strStartValue;
sbHidden.append("");
strListPath += "&"+strControlName+"_small="+strEndValue;
}
/********************************************
日期类型的处理
*********************************************/
for( int i=0;vDateTime!=null&&i0 && strEndValue1 != null&&strEndValue1.length()>0){
try {
date1 = sdf.parse(strStartValue1);
date2 = sdf.parse(strEndValue1);
if((date1.getTime()-date2.getTime())>0){
out.println("时间输入有误" );
return;
}
} catch (ParseException e) {
e.printStackTrace();
}
}
if( !canAccess(strStartValue1) || !canAccess(strEndValue1)){
out.println("传入参数有误" );
return;
}
//开始时间为空,结束时间有值
if (StringUtil.getString(strStartValue1).length() <= 0 && StringUtil.getString(strEndValue1).length() > 0) {
sbWhereSql.append(" AND a." + strControlName1 + " <= :strEndValue1" + i);
esWhereSql.append(" AND ").append(strControlName1).append(" :[ * TO ").append(strEndValue1 + " 23:59:59").append(" ]");
map.put("strEndValue1" + i, strEndValue1 + " 23:59:59");
}
//开始时间有值,结束时间有值
if (StringUtil.getString(strStartValue1).length() > 0 && StringUtil.getString(strEndValue1).length() > 0) {
sbWhereSql.append(" AND a." + strControlName1 + " >= :strStartValue1" + i + " AND " + strControlName1 + "<= :strEndValue1" + i);
esWhereSql.append(" AND ").append(strControlName1).append(" :[ ").append(strStartValue1 + " 00:00:00").append(" TO ").append(strEndValue1 + " 23:59:59").append(" ]");
map.put("strStartValue1" + i, strStartValue1 + " 00:00:00");
map.put("strEndValue1" + i, strEndValue1 + " 23:59:59");
}
//开始时间有值,结束时间为空
if (StringUtil.getString(strStartValue1).length() > 0 && StringUtil.getString(strEndValue1).length() <= 0) {
sbWhereSql.append(" AND a." + strControlName1 + " >= :strStartValue1" + i);
esWhereSql.append(" AND ").append(strControlName1).append(" :[ ").append(strStartValue1 + " 00:00:00").append(" TO * ]");
map.put("strStartValue1" + i, strStartValue1 + " 00:00:00");
}
sbHidden.append("");
strListPath += "&"+strControlName1+"_start="+strStartValue1;
sbHidden.append("");
strListPath += "&"+strControlName1+"_end="+strEndValue1;
}
/***********************************************************
文本类型(小字段)的处理
***********************************************************/
for( int i=0;vVarchar!=null&&i传入参数有误" );
return;
}
if( StringUtil.getString(strControlValue2).length() >0 )
{
strControlValue2 = StringUtil.replace(strControlValue2,"'","''");
if (type2.equals("0")) {
sbWhereSql.append(" AND " + strControlName2 + " LIKE :strControlValue2" + i);
esWhereSql.append(" AND " + strControlName2 + " :*"+strControlValue2+"*");
map.put("strControlValue2" + i, "%" + strControlValue2 + "%");
} else {
if(BaseInfo.getDbType() == 1 && strControlName2.startsWith("field_")){
sbWhereSql.append(" AND dbms_lob.instr(" + strControlName2 + ",'"+strControlValue2.toLowerCase()+"',1,1) > 0");
}else {
sbWhereSql.append(" AND " + strControlName2 + " = :strControlValue2" + i);
}
esWhereSql.append(" AND " + strControlName2 + " : "+strControlValue2);
map.put("strControlValue2" + i, strControlValue2);
}
}
sbHidden.append("");
if(StringUtil.isNotEmpty(strControlValue2)){
strListPath += "&" + strControlName2 + "=" + URLEncoder.encode(strControlValue2, "utf-8");
}else {
strListPath += "&" + strControlName2 + "=" + strControlValue2;
}
}
/************************************************************
词典类型的处理
************************************************************/
String strControlValue3 = ""; //控件名
String strControlName3 = ""; //控件值
String strStartValue3 = ""; //时间开始值
String strEndValue3 = ""; //时间结束值
for( int i=0;vDick!=null&&i传入参数有误" );
return;
}
if( strControlValue3.length() >0 && !strControlValue3.equals("0"))
{
sbWhereSql.append( " AND a."+strControlName3 + "=:strControlValue3"+i );
esWhereSql.append(" AND " + strControlName3 + " : "+strControlValue3);
map.put("strControlValue3"+i, strControlValue3);
}
sbHidden.append("");
strListPath += "&"+strControlName3+"="+strControlValue3;
}
/*******************************************
图片类型处理
********************************************/
String strControlValue4 = ""; //控件名
String strControlName4 = ""; //控件值
String strStartValue4 = ""; //时间开始值
String strEndValue4 = ""; //时间结束值
for( int i=0;vPic!=null && i传入参数有误" );
return;
}
if( strControlValue4.length() >0 )
{
if (type4.equals("0")) {
sbWhereSql.append(" AND " + strControlName4 + " LIKE :strControlValue4" + i);
esWhereSql.append(" AND " + strControlName4 + " :*"+strControlValue4+"*");
map.put("strControlValue4" + i, "%" + strControlValue4 + "%");
} else {
sbWhereSql.append(" AND " + strControlName4 + " = :strControlValue4" + i);
esWhereSql.append(" AND " + strControlName4 + " : "+strControlValue4);
map.put("strControlValue4" + i, strControlValue4);
}
}
sbHidden.append("");
strListPath += "&"+strControlName4+"="+strControlValue4;
}
/*******************************************
flash类型处理
********************************************/
String strControlValue5 = ""; //控件名
String strControlName5 = ""; //控件值
String strStartValue5 = ""; //时间开始值
String strEndValue5 = ""; //时间结束值
for( int i=0;vFlash!=null && i传入参数有误" );
return;
}
if( strControlValue5.length() >0 )
{
if (type5.equals("0")) {
sbWhereSql.append(" AND " + strControlName5 + " LIKE :strControlValue5" + i);
esWhereSql.append(" AND " + strControlName5 + " :*" + strControlValue5 + "*");
map.put("strControlValue5" + i, "%" + strControlValue5 + "%");
} else {
sbWhereSql.append(" AND " + strControlName5 + " = :strControlValue5" + i);
esWhereSql.append(" AND " + strControlName5 + " : " + strControlValue5);
map.put("strControlValue5" + i, strControlValue5);
}
map.put("strControlValue5"+i, "%" + strControlValue5 + "%");
}
sbHidden.append("");
strListPath += "&"+strControlName5+"="+strControlValue5;
}
/*******************************************
media类型处理
********************************************/
String strControlValue6 = ""; //控件名
String strControlName6 = ""; //控件值
String strStartValue6 = ""; //时间开始值
String strEndValue6 = ""; //时间结束值
for( int i=0;vMedia!=null && i传入参数有误" );
return;
}
if( strControlValue6.length() >0 )
{
if (type6.equals("0")) {
sbWhereSql.append(" AND " + strControlName6 + " LIKE :strControlValue6" + i);
esWhereSql.append(" AND " + strControlName6 + " :*" + strControlValue6 + "*");
map.put("strControlValue6" + i, "%" + strControlValue6 + "%");
} else {
sbWhereSql.append(" AND " + strControlName6 + " = :strControlValue6" + i);
esWhereSql.append(" AND " + strControlName6 + " : " + strControlValue6);
map.put("strControlValue6" + i, strControlValue6);
}
}
sbHidden.append("");
strListPath += "&"+strControlName6+"="+strControlValue6;
}
/*******************************************
attach类型处理
********************************************/
String strControlValue7 = ""; //控件名
String strControlName7 = ""; //控件值
String strStartValue7 = ""; //时间开始值
String strEndValue7 = ""; //时间结束值
for( int i=0; vAttach!=null && i传入参数有误" );
return;
}
if( strControlValue7.length() >0 )
{
if (type7.equals("0")) {
sbWhereSql.append(" AND " + strControlName7 + " LIKE :strControlValue7" + i);
esWhereSql.append(" AND " + strControlName7 + " :*" + strControlValue7 + "*");
map.put("strControlValue7" + i, "%" + strControlValue7 + "%");
} else {
sbWhereSql.append(" AND " + strControlName7 + " = :strControlValue7" + i);
esWhereSql.append(" AND " + strControlName7 + " : " + strControlValue7);
map.put("strControlValue7" + i, strControlValue7);
}
map.put("strControlValue7"+i, "%" + strControlValue7 + "%");
}
sbHidden.append("");
strListPath += "&"+strControlName7+"="+strControlValue7;
}
/*******************************************
clob类型处理
********************************************/
String strControlValue8 = ""; //控件名
String strControlName8 = ""; //控件值
String strStartValue8 = ""; //时间开始值
String strEndValue8 = ""; //时间结束值
for( int i=0;vClob!=null && i传入参数有误" );
return;
}
if( strControlValue8.length() >0 )
{
if (type8.equals("0")) {
sbWhereSql.append(" AND " + strControlName8 + " LIKE :strControlValue8" + i);
esWhereSql.append(" AND " + strControlName8 + " :*" + strControlValue8 + "*");
map.put("strControlValue8" + i, "%" + strControlValue8 + "%");
} else {
sbWhereSql.append(" AND " + strControlName8 + " = :strControlValue8" + i);
esWhereSql.append(" AND " + strControlName8 + " : " + strControlValue8);
map.put("strControlValue8" + i, strControlValue8);
}
}
sbHidden.append("");
strListPath += "&"+strControlName8+"="+strControlValue8;
}
/***********************************************************
枚举类型的处理
***********************************************************/
String strControlValue9 = ""; //控件名
String strControlName9 = ""; //控件值
for( int i=0;vMeiju!=null&&i传入参数有误" );
return;
}
if( strControlValue9.length() >0 && !(StringUtil.getStringTrim(strControlValue9)).equals("请选择"))
{
sbWhereSql.append( " AND a."+strControlName9 + " = :strControlValue9"+i);
esWhereSql.append(" AND " + strControlName9 + " : " + strControlValue9);
map.put("strControlValue9"+i, strControlValue9);
}
sbHidden.append("");
strListPath += "&"+strControlName9+"="+URLEncoder.encode(strControlValue9, "UTF-8");
}
/***********************************************************
维度类型的处理
***********************************************************/
String strControlValuea = ""; //控件名
String strControlNamea = ""; //控件值
ArrayList weiduFieldName = new ArrayList();
HashMap weiduMap = new HashMap();
for( int i=0;vWeidu!=null&&i传入参数有误" );
return;
}
if( strControlValuea.length() >0)
{
weiduFieldName.add(strControlNamea);
weiduMap.put(strControlNamea, strControlValuea);
}
sbHidden.append("");
strListPath += "&"+strControlNamea+"="+strControlValuea;
}
//sbWhereSql.append( blf.getKeyWordSql( strKeyWord,nCataID ) );
if(!isMeta){
if (i_style == 7) {
sbWhereSql.append(" AND a.i_cataid=:nCataID");
esWhereSql.append(" AND i_cataid : " + nCataID);
map.put("nCataID", nCataID);
}
}else{
sbWhereSql.append( " AND a.i_webid=:nWebID" );
esWhereSql.append(" AND i_webid : " + strWebID);
map.put("nWebID",NumberUtil.getInt(strWebID));
}
List idList = blf.getTotalCountWeidu(strTableName , sbWhereSql.toString(),esWhereSql.toString(), map, weiduFieldName, weiduMap,ordertype,NumberUtil.getInt(strWebID));
// 信息的总条数
int nTotalCount = 0;
if(idList !=null){
nTotalCount = idList.size();
}
//得到总页数
int nTotalPage = nTotalCount / nPageCount;
if( nTotalCount % nPageCount != 0 )
nTotalPage += 1;
if( nCurrentPage > nTotalPage )
nCurrentPage = nTotalPage;
if( nCurrentPage <=0 ){
nCurrentPage = 0;
}
int nMin = (nCurrentPage-1) * nPageCount;
int nMax = nCurrentPage * nPageCount;
if(nCurrentPage == 0){
nMin = 0;
nMax= 1 * nPageCount;
}
if(nMax>idList.size()){
nMax = idList.size();
}
ArrayList newidList = new ArrayList();
for(int i = nMin;i 0 )
{
ModalFile mfile = ModalFile.getInstance().init( strAppID );
mfile.setWebID( NumberUtil.getInt(strWebID) );
mfile.setSysPath();
java.util.Hashtable htReturn = mfile.getModalHTML( nModalObjectID );
if( htReturn != null && htReturn.size()>0 )
{
strModal = htReturn.get("modalHTML").toString(); //板板文件
strImgPath = htReturn.get("imagePath").toString(); //图片路径
mfile.copyImageFile( strImgPath, strModulePath + "images" + File.separator, strModal );
// 替换路径
// strModal = mfile.replaceImagePath(strModal);
}
}
xmlparse = new XMLProperties2( file );
strNotesInfo = xmlparse.getNotesInfo("dahan.field","vc_fieldname,vc_name,vc_fieldtype,length,id");
String strUrl = "";
String linkUrl = "";
String strReturn = "";
String selecLinksql = "";
String[][] linkUrls = null;
StringBuffer sbContent = new StringBuffer();
Hashtable htCol = new Hashtable();
Hashtable htArt = new Hashtable();
Hashtable htColArt = new Hashtable();
Vector vArt = new Vector();
Vector vColArt = new Vector();
HashMap htUnit = new HashMap();
String strValue = "";
if( strData != null && strData.length > 0 ){
for( int i=0;i 0){
linkUrl = StringUtil.getString(linkUrls[0][0]).trim();
int b_ref = NumberUtil.getInt(linkUrls[0][1]);
if (StringUtil.isNotEmpty(linkUrl)) {
if (b_ref == 2) {
//找当前信息的源信息的网站域名
Jcms_InforefBLF refblf = Jcms_InforefBLF.getInstance();
Jcms_InforefEntity refEn = refblf.getSEntity(NumberUtil.getInt(strData[i][0]), nCataID);
if (refEn != null) {
String strDomain = Jcms_WebinfomationBLF.modifyAndGetWebDomain(strAppID, refEn.getI_swebid());
if (strDomain.trim().length() > 0) {
if(HttpUrl.isStartWithHttp(strDomain)){
strUrl = strDomain + "/" + linkUrl;
}else{
strUrl = "http://" + strDomain + "/" + linkUrl;
}
}
}
//非链接信息处理
}else {
strUrl = linkUrl;
}
// 维持前人逻辑
if (strUrl.startsWith("art/")) {
// 链接信息href
strUrl = "../../" + strUrl;
}
}
}
htArt.put( "articlecreatedate",StringUtil.getString(strData[i][3]) );
htArt.put( "articleurl" , strUrl);
}
}
}else{
for( int j=1;j 0){
linkUrl = StringUtil.getString(linkUrls[0][0]).trim();
int b_ref = NumberUtil.getInt(linkUrls[0][1]);
if (StringUtil.isNotEmpty(linkUrl)) {
if (b_ref == 2) {
//找当前信息的源信息的网站域名
Jcms_InforefBLF refblf = Jcms_InforefBLF.getInstance();
Jcms_InforefEntity refEn = refblf.getSEntity(NumberUtil.getInt(strData[i][0]), nCataID);
if (refEn != null) {
String strDomain = Jcms_WebinfomationBLF.modifyAndGetWebDomain(strAppID, refEn.getI_swebid());
if (strDomain.trim().length() > 0) {
if(HttpUrl.isStartWithHttp(strDomain)){
strUrl = strDomain + "/" + linkUrl;
}else{
strUrl = "http://" + strDomain + "/" + linkUrl;
}
}
}
//非链接信息处理
}else {
strUrl = linkUrl;
}
// 维持前人逻辑
if (strUrl.startsWith("art/")) {
// 链接信息href
strUrl = "../../" + strUrl;
}
}
}
htArt.put( "articlecreatedate",StringUtil.getString(strData[i][2]) );
htArt.put( "articleurl" , strUrl);
}
}
}
}
vArt.add(htArt);
htColArt.put("Column", htCol);
htColArt.put("Article", vArt);
vColArt.add(htColArt);
htColArt = new Hashtable();
}
}
/* 如果查不到数据就不要再显示空的表格了 20110707 xjc
else
{
for(int i=0;strNotesInfo!=null && i< strNotesInfo.length ;i++ )
{
htArt.put( strNotesInfo[i][1] , " " );
}
vArt.add(htArt);
htColArt.put("Column", htCol);
htColArt.put("Article", vArt);
vColArt.add(htColArt);
htColArt = new Hashtable();
}
*/
htUnit.put( "count", ""+nTotalCount );
htUnit.put( "RowCol", strRow + "," + strCol); //行和列
htUnit.put("ColumnArticle", vColArt);
//标签解析
Parser parser = new Parser(htUnit);
strReturn = parser.parse(strScript);
String strHidden = ""
// + ""
+ "";
sbHidden.append( strHidden );
Jcms_SearchBLF searchBlf = Jcms_SearchBLF.getInstance().init(strAppID,NumberUtil.getInt(strWebID));
Jcms_WebinfomationBLF webBlf = Jcms_WebinfomationBLF.getInstance();
Jcms_WebinfomationEntity webEn = webBlf.achieveWebEntity(NumberUtil.getInt(strWebID));
String strPages = searchBlf.getPaginationView(strListPath,nTotalCount,nPageCount,nCurrentPage,webEn);
sbContent.append( strReturn );
sbContent.append( "
" );
sbContent.append( strPages );
String strAll = getShow(strModal, sbContent.toString() );
String currentPlaceTag = "";
strAll = strAll.replaceAll(currentPlaceTag, strCurrentPlace);
String strReplace = "/"+strWeb_in_servername+"/jcms_files/jcms"+strAppID + "/web"+strWebID+"/site/";
if( strWebType.equals("2"))
{
strAll = StringUtil.replace( strAll ,strReplace ,"/");
}
out.println(strAll);
%>
<%!
public String getShow( String strModal,String strContent ){
strModal = StringUtil.getString( strModal );
strContent = StringUtil.getString( strContent );
if( strModal.trim().length() == 0 )
return strContent ;
String strFrom1 = "";
int nPos1 = strModal.indexOf( strFrom1 );
int nPos2 = strModal.indexOf( strFrom2, nPos1 );
String strReturn = "";
if( nPos1 >=0 && nPos2>=0 && nPos2 > nPos1 )
strReturn = strModal.substring(0,nPos1) + strContent + strModal.substring( nPos2+strFrom2.length() );
else
strReturn = strModal;
return strReturn;
}
public void logWrite(String str) throws IOException {
LocalFileUtil localFileUtil = LocalFileUtil.getInstance();
IFileUtil fileUtil = (IFileUtil )SpringUtil.getBean("FileUtil");
String path = fileUtil.getAbsolutePath("");
String date = new SimpleDateFormat("yyyyMMdd").format(new Date());
File folder = new File(path + "/zlog/"+date+"/");
if (!folder.exists()) {
folder.mkdirs();
}
//mylog.txt 根据模块自定义修改
File logFile = new File(path + "/zlog/"+date+"/synclog.txt");
if (!logFile.exists()) {
logFile.createNewFile();
}
Writer out = null;
out = new FileWriter(logFile, true);
out.write(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS").format(new Date()) + " " + str + "\r\n");
out.close();
}
%>