⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cardchannel.java

📁 JAVA邮件系统
💻 JAVA
字号:
/* www.365d0.com 个人定制模块 2000.7.12
 *
 */

import java.io.*;
import java.text.*;
import java.util.*;
import java.sql.*;

/*
 * 从Channel派生的名片类
 *
 * @author Chen Xin Wu, Lisheng, Liyan
 */

public class CardChannel extends Channel
{
	//在构造函数中命名本频道
	CardChannel()
	{
		channelName = "通讯录";
	}
	
	public boolean editChannel(Person p,HtmlOuter Html)
	{
		return true;
	}
	//实现makeChannel方法
	public void makeChannel(Person p,TemplateList tempList,HtmlOut desHtml)
	{
		//定义单个模板
		SingleTemplate st,st2;
		
		String channelContent = "",cardStr = "";
		//在全局变量tempList中找到"频道"模板
		st = tempList.searchTemplate("频道2");
		if(st==null) return ;
		
		
		int nKey = st.getKeyNum ();
		String sKey ;
		for(int j=0;j<nKey;j++){
			desHtml.addString (st.getStringAt (j));
			sKey = st.getKeyAt (j);
			if( sKey .compareTo("cgi-path")==0 )
				desHtml.addString (CommonMethods.sHostNameCGI);

			if( sKey.compareTo("标题")==0 )
				desHtml.addString (	channelName );
			//通讯录没有编辑。
			if( sKey.compareTo("CloseCGI")==0 )
				desHtml.addString("CloseChannel?channel=card" );
			if( sKey.compareTo("内容")==0 )
				makeChannelContent( p, tempList, desHtml);
			if( sKey.compareTo("链接")==0 )
				desHtml.addString("CardServlet");
		}
		desHtml.addString (st.getEndString());
		return;
	}
	
	public void makeChannelContents(Person p,TemplateList tempList,HtmlOut desHtml){
		
	}
	
	public void makeChannelContent(Person p,TemplateList tempList,HtmlOut desHtml)
	{
		SingleTemplate st;
		String channelContent = "";
		st = tempList.searchTemplate("通讯录");
		if(st==null) {
			desHtml.setErrorID (desHtml.SINGLE_TEMPLATE_NOTFIND ,
								"","模板错误","Login");
			return ;
		}

		Card card = new Card();
		card.clear();
		card.query(p.getName());
		int nRecordLength=1;
		String name[],eMail[],phone[];
		name=new String[4];
		eMail=new String[4];
		phone=new String[4];
		while (card.read())
		{
			if (nRecordLength>3) break;
			name[nRecordLength]="<a href=\"CardServlet?flag=edit&ID=" +card.getID() + "\">"+card.getCardName()+"</a>";
			eMail[nRecordLength]=card.getEMail();
			phone[nRecordLength]=card.getPhone();
			nRecordLength++;
		}
		card.clear();
		int nKey = st.getKeyNum (),nKey2;
		String sKey,sKey2 ;
		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("Cards")==0 )
			{
				SingleTemplate st2 = tempList.searchTemplate ("单名片");
				if(st2==null) {
					return ;
				}
				nKey2 = st2.getKeyNum();
				for(int k=1;k<nRecordLength;k++)
					for(int j=0;j<nKey2;j++){
						desHtml.addString (st2.getStringAt (j));
						sKey2 = st2.getKeyAt(j);
						if( sKey2 .compareTo("cgi-path")==0 )
							desHtml.addString (CommonMethods.sHostNameCGI);
						if( sKey2.compareTo("姓名")==0 )
							desHtml.addString (name[k]);
						if( sKey2.compareTo("EMail")==0 )
							if(eMail[k]!=null)
								if(eMail[k].trim().compareTo("")!=0)
									desHtml.addString("<a href=SendMailServlet?to='"+eMail[k]+"'&init=true target='_blank'>"+eMail[k]+"</a>");
						if( sKey2.compareTo("电话")==0 )
							desHtml.addString (phone[k]);
					}
				desHtml.addString (st2.getEndString());
			}
		}
		desHtml.addString (st.getEndString());
		return ;
	}
	
	public void makeCard_Main(Person p,TemplateList tempList,HtmlOut desHtml,
								  String sFindItem,String sFindValue)
	{
		SingleTemplate st,st2;
		String channelContent = "";
		st = tempList.searchTemplate("ROOT");
		if(st==null) {
			desHtml.setErrorID (desHtml.SINGLE_TEMPLATE_NOTFIND ,
								"","模板错误","Login");
			System.out.println ("find st error1");
			return ;
		}
		TemplateList tempList2=CommonMethods.getCard_ShowTemplate();
		if(tempList2==null){
			System.out.println ("find st error2");
		}
		st2= tempList2.searchTemplate("ROOT");
		if(st2==null) {
			System.out.println ("find st error3");
			return ;
		}
		Card card = new Card();
		card.clear();
		if(sFindItem!=null&&sFindItem!="") 
			card.setQuery(sFindItem,sFindValue);
		card.query(p.getName());
		String name[],eMail[],phone[],sCity[];
		int ID[],nPage=100;
		ID=new int[nPage];
		name=new String[nPage];
		eMail=new String[nPage];
		phone=new String[nPage];
		sCity=new String[nPage];
		int j=1;
		while (card.read())
		{
			if (j>nPage-1) break;
			ID[j]=card.getID();
			name[j]=card.getCardName();
			eMail[j]=card.getEMail();
			sCity[j]=card.getCity();
			phone[j]=card.getPhone();
			j++;
		}
		card.clear();
		int nKey = st.getKeyNum();
		int n2Key = st2.getKeyNum();
		String sKey,s2Key;
		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 )
			{
				for(int l=1;l<j;l++) {
					for(int k=0;k<n2Key;k++) {
						desHtml.addString (st2.getStringAt (k));
						s2Key = st2.getKeyAt (k);
						if( s2Key .compareTo("cgi-path")==0 )
							desHtml.addString (CommonMethods.sHostNameCGI);
						if( s2Key.compareTo("ID")==0 )
							desHtml.addString (""+ID[l]);
						if( s2Key.compareTo("姓名")==0 )
							desHtml.addString (name[l]);
						if( s2Key.compareTo("EMail")==0 )
							desHtml.addString(eMail[l]);
						if( s2Key.compareTo("城市")==0 )
							desHtml.addString (sCity[l]);
						if( s2Key.compareTo("电话")==0 ) 
							desHtml.addString (phone[l]);
					}
				}
				desHtml.addString(st2.getEndString());
			}
		}
		desHtml.addString(st.getEndString());
		return;
	}

		public void makeCard_Edit(Person p,TemplateList tempList,HtmlOut desHtml,int nID)
	{
		SingleTemplate st;
		String channelContent = "",cardStr = "",sCompare;
		st = tempList.searchTemplate("ROOT");
		if(st==null) {
			desHtml.setErrorID (desHtml.SINGLE_TEMPLATE_NOTFIND ,
								"","模板错误","Login");
			return ;
		}
		String sKey,sArray[]=new String[24];
		int nKey=st.getKeyNum();
		Card card=new Card();
		card.setQuery("ID",""+nID);
		card.query(p.getName());
		if(card.read()) 
			sArray=card.getDataArray();
		card.clear();
		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);
			}
			for(int k=1;k<10;k++) {
				if (sArray[k]==null)
					sArray[k]="";
				if(sKey.compareTo("a00"+k)==0)
					desHtml.addString(""+sArray[k].trim());
			}
			//10是国家
			for(int k=10;k<24;k++) {
				if (sArray[k]==null)
					sArray[k]="";
				if(sKey.compareTo("a0"+k)==0)
					desHtml.addString(""+sArray[k].trim());
			}
			
		}
		desHtml.addString(st.getEndString());
	}
	public boolean editChannel(Person p,HtmlOut Html){
		return true;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -