📄 newsdchannel.java
字号:
import java.io.*;
import java.text.*;
import java.util.*;
import java.sql.*;
public class NewsDChannel extends Channel
{
NewsDChannel()
{
channelName = "金融类";
}
public void makeChannel(Person p,TemplateList tempList,HtmlOut desHtml)
{
SingleTemplate st;
st = tempList.searchTemplate("频道右");
if(st==null)
return ;
int nKey = st.getKeyNum ();
String sKey ;
for(int i=0;i<nKey;i++){
desHtml.addString (st.getStringAt (i));
sKey = st.getKeyAt (i);
if( sKey.compareTo("cgi-path")==0 )
desHtml.addString (CommonMethods.sHostNameCGI);
if( sKey.compareTo("标题")==0 )
desHtml.addString ( channelName );
if( sKey.compareTo("EditCGI")==0 )
desHtml.addString ( "EditChannel?channel=newsd" );
if( sKey.compareTo("CloseCGI")==0 )
desHtml.addString ( "CloseChannel?channel=newsd" );
if (sKey.compareTo ("内容")==0)
this.makeChannelContents (p,tempList,desHtml);
}
desHtml.addString(st.getEndString());
return ;
}
public void makeChannelContents(Person p,TemplateList tempList,HtmlOut desHtml)
{
String userName="";
userName=p.getName ();
if (userName ==null)
userName="";
else
userName=userName.trim ();
SingleTemplate st;
st = tempList.searchTemplate("新闻");
if( st == null)
{
return;
}
int nKey = st.getKeyNum ();
String sKey;
DBOperater DB=new DBOperater ("newsachannel");
ResultSet rs=DB.executeQuery ("select cateid,length from ps_news where username='"+userName+"' and channelname='"+this.channelID +"' ORDER BY ord" );
// ResultSet rs1=DB.executeQuery ("select cateid from category where folder='T' and lmdm like 'B%'");
news News=new news ();
String sCateId=new String ();
int nLength;
int Num=0;
if(rs!=null){
try{
while(rs.next ()){
sCateId=rs.getString (1);
nLength=rs.getInt (2);
for (int i=0;i<nKey;i++){
sKey = st.getKeyAt (i);
desHtml.addString (st.getStringAt (i));
if( sKey.compareTo("cgi-path")==0 )
desHtml.addString (CommonMethods.sHostNameCGI);
if (sKey.compareTo ("新闻栏目")==0)
desHtml.addString (News.getNewsTopic (sCateId));
if(sKey.compareTo ("新闻标题")==0)
desHtml.addString (News.showNewsTitle(sCateId,nLength));
if(sKey.compareTo ("栏目链接")==0)
desHtml.addString ("ShowNewsSingleTitle?cateid="+sCateId);
}//end for i
desHtml.addString (st.getEndString ());
Num++;
}//end while
}catch(Exception e){
}//end try
}//end if
DB.close ();
if (Num==0)
{
DBOperater DB1=new DBOperater ("category");
// ResultSet rs=DB.executeQuery ("select cateid,length from ps_news where username='"+userName+"' and channelname='"+this.channelID +"' ORDER BY ord" );
ResultSet rs1=DB1.executeQuery ("select cateid from category where folder='T' and lmdm like 'D%'");
if(rs1!=null){
try{
while(rs1.next ()){
if (Num>2)
break;
sCateId=rs1.getString (1);
for (int i=0;i<nKey;i++){
sKey = st.getKeyAt (i);
desHtml.addString (st.getStringAt (i));
if( sKey.compareTo("cgi-path")==0 )
desHtml.addString (CommonMethods.sHostNameCGI);
if (sKey.compareTo ("新闻栏目")==0)
desHtml.addString (News.getNewsTopic (sCateId));
if(sKey.compareTo ("新闻标题")==0)
desHtml.addString (News.showNewsTitle(sCateId,5));
if(sKey.compareTo ("栏目链接")==0)
desHtml.addString ("ShowNewsSingleTitle?cateid="+sCateId);
}//end for i
desHtml.addString (st.getEndString ());
Num++;
}//end while
}catch(Exception e){
}//end try
}//end if
DB1.close ();
}
return ;
}
public boolean editChannel(Person p,HtmlOut desHtml)
{
TemplateList tempList=CommonMethods.getNewsEditTemplate ();
String userName="";
userName=p.getName ();
if (userName==null)
return false;
else
userName = userName.trim ();
if (userName =="")
return false;
SingleTemplate st,st1;
st = tempList.searchTemplate("ROOT");
st1= tempList.searchTemplate ("新闻频道");
if(st==null)
return false;
if (st1==null)
return false;
String sKey ;
int nKey = st.getKeyNum ();
int nKey1= st1.getKeyNum ();
news News = new news ();
String sCount = "";
for (int n=1;n<=News.getNewCount ("D");n++){
sCount+="<option>";
sCount+=n;
}
for(int i=0;i<nKey;i++){
desHtml.addString (st.getStringAt (i));
sKey = st.getKeyAt (i);
if( sKey.compareTo("cgi-path")==0 )
desHtml.addString (CommonMethods.sHostNameCGI);
if( sKey.compareTo("频道名称")==0 )
desHtml.addString (this.channelName);
if (sKey.compareTo ("频道名")==0)
desHtml.addString (this.channelID );
//用子模板替换具体内容
if (sKey.compareTo ("定制内容")==0)
{
DBOperater DB = new DBOperater ("category");
ResultSet rs = DB.executeQuery ("select cateid,name from category where lmdm like 'D%' and folder = 'T' ORDER BY cateid");
if(rs!=null){
try{
int k=0;
String sCateName=new String ();
String sNewsCate = new String ();
String sOrd=new String ();
String sLength=new String ();
String sKey1=new String ();
String sCateId = new String ();
String sSelect = new String ();
while( rs.next () ){
sCateId = rs.getString (1);
sCateName=rs.getString (2);
DBOperater DB1= new DBOperater ("ps_news");
ResultSet rs1 = DB1.executeQuery ("select length,ord from ps_news where cateid='"+sCateId+"' and username='"+userName+"'");
sSelect="";
sOrd="0";
sLength="0";
if (rs1!=null){
try{
if (rs1.next ())
{
sLength=rs1.getString (1);
sOrd=rs1.getString (2);
sSelect ="CHECKED";
}
}catch(Exception e){
sLength="0";
sOrd="0";
sSelect="";
}
}
DB1.close ();
for (int j=0;j<nKey1;j++){
desHtml.addString (st1.getStringAt (j));
sKey1 = st1.getKeyAt (j);
if( sKey1.compareTo("cgi-path")==0 )
desHtml.addString (CommonMethods.sHostNameCGI);
if (sKey1.compareTo ("新闻栏目")==0)
desHtml.addString (sCateName);
if (sKey1.compareTo ("序号")==0)
desHtml.addString (k+"");
if (sKey1.compareTo ("长度")==0)
desHtml.addString (News.getNewCount ("D")+"");
if (sKey1.compareTo ("显示顺序")==0)
desHtml.addString (sOrd);
if (sKey1.compareTo ("显示条目")==0)
desHtml.addString (sLength);
if (sKey1.compareTo ("选择")==0)
desHtml.addString (sSelect);
if (sKey1.compareTo ("顺序")==0)
desHtml.addString (sCount);
if (sKey1.compareTo ("cateid")==0)
desHtml.addString (sCateId);
}
desHtml.addString(st1.getEndString ());
k++;
}
}
catch(Exception e){
DB.close ();
return false;
}
}
DB.close ();
}
}
desHtml.addString(st.getEndString());
return true;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -