home *** CD-ROM | disk | FTP | other *** search
- <%
- #include </utility/global.fts>
- #include </utility/ftgate.fts>
- #include </utility/theme.fts>
- #include </utility/wmsecurity.fts>
- %>
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
- <HTML>
- <HEAD>
- <LINK REL=STYLESHEET HREF="/utility/main<%=nn4%>.css" TYPE="text/css">
- <META NAME="GENERATOR" Content="Microsoft Developer Studio">
- <META HTTP-EQUIV="Content-Type" content="text/html; charset=iso-8859-1">
- <TITLE>FTGatePro WebMail</TITLE>
- </HEAD>
-
- <SCRIPT LANGUAGE="JavaScript1.2" TYPE="text/javascript">
- <!--
- var addressbook=null;
- var dir="<%=buttons%>"
-
- if (!document.images) {}
- else {
- send0 = new Image();
- send0.src = dir+"send.gif";
- send1 = new Image();
- send1.src = dir+"sendon.gif";
- cancel0 = new Image();
- cancel0.src = dir+"cancel.gif";
- cancel1 = new Image();
- cancel1.src = dir+"cancelon.gif";
- }
-
- function change(Name,Image,No)
- {
- if (!document.images) {}
- else document [Name].src = eval(Image + No + ".src");
- }
-
- <%
- if (netscape)
- {
- %>
- var enter=false;
- document.captureEvents(Event.KEYPRESS|Event.FOCUS);
- document.onkeypress = keypress;
- document.onfocus = focus;
-
- function focus(event)
- {
- if (event.target==document.ftgate.body)
- {
- enter=true;
- }
- else
- enter=false;
- }
-
- function keypress(event)
- {
- if (enter)
- return true;
-
- if (event.which==13)
- {
- onSend();
- return false;
- }
-
- return true;
- }
- <%
- }
- else
- {
- %>
- function keypress()
- {
- if (document.activeElement==document.ftgate.body)
- return;
-
- if (event.keyCode==13)
- {
- event.returnValue=null;
- onSend();
- }
- }
- <%
- }
- %>
-
- function onLoad()
- {
- <%
- if ((request.command=="1")||(request.command=="4"))
- output.writeln("document.ftgate.to.focus();")
- else if (request.command=="2")
- output.writeln("document.ftgate.subject.focus();")
- else
- output.writeln("document.ftgate.body.focus();")
- %>
- }
-
- function isOK(form)
- {
- if (!isEmailList(form.to.value))
- {
- window.alert("You must specfy at least one recipient in the form user@domain.com.");
- form.to.focus();
- return false;
- }
-
- return true;
- }
-
- function onSend()
- {
- if (!isOK(document.ftgate))
- return;
-
- document.ftgate.param1.value=document.ftgate.to.value;
- document.ftgate.submit();
- }
-
- function onLaunch(href)
- {
- window.location.href=href
- }
-
- function onAddress(to)
- {
- var url="";
-
- document.ftgate.tocc.value=to;
- if (to)
- url = "address.fts?to="+document.ftgate.to.value;
- else
- url = "address.fts?to="+document.ftgate.cc.value;
- addressbook = window.open(url,"AddrWindow","width=600,height=325,resizable=yes,scrollbars=yes");
- addressbook.opener = window;
- addressbook.focus();
- }
-
- function onUnload()
- {
- if (addressbook != null && addressbook.closed == false)
- {
- addressbook.close();
- addressbook = null;
- }
- }
-
- function onCancel()
- {
- parent.close();
- }
- //-->
- </SCRIPT>
- <SCRIPT LANGUAGE="JavaScript1.2" SRC="/utility/cookies.js" TYPE="text/javascript"></SCRIPT>
- <SCRIPT LANGUAGE="JavaScript1.2" SRC="/utility/core.js" TYPE="text/javascript"></SCRIPT>
-
- <BODY BGCOLOR="white" onLoad="onLoad()" onUnload="onUnload()" MARGINHEIGHT="0" MARGINWIDTH="0" onKeypress="keypress()">
- <!--
- <%
- scripttimeout=300
-
- var to=""
- var cc=""
- var text=""
- var subject=""
-
- var folder=new m.folder
- var ldap=new server.ldap
- var wm=new server.webmail
-
- function isDigit(char)
- {
- var i=number(char)
-
- if ((i>0)||(char=="0"))
- return true
- else
- return false
- }
-
- folder.message.selectid(request.id)
-
- if (session.webmail.addsignature==1)
- text="\n\r"+session.webmail.signature
-
- if (request.command=="1")
- {
- // new email
- }
- else if (request.command=="2")
- {
- // email address book entry
- to=session.addressbook.email[request.id]
- }
- else if ((request.command=="3")||(request.command=="4"))
- {
- // reply to email
- if (request.command=="3")
- to=request.email
-
- if (request.command=="3")
- subject="Re: "+wm.headerdecode(folder.message.subject)
- else
- subject="Fw: "+wm.headerdecode(folder.message.subject)
-
- text=text+"\n\r-----Original Message-----\n\r"
-
- extractNameAndAddress(folder.message.fromline)
- text=text+"From: \""+wm.headerdecode(extractedName)+"\" <"+extractedAddress+">\n"
-
- extractNameAndAddress(folder.message.toline)
- text=text+"To: \""+wm.headerdecode(extractedName)+"\" <"+extractedAddress+">\n"
- text=text+"Date: "+folder.message.sentdate+"\n"
- text=text+"\n"
-
- var msg = folder.message.open()
-
- var loop=msg.mime.first()
- while (loop)
- {
- if (msg.mime.contenttype=="text/plain")
- break
-
- loop=msg.mime.next()
- }
-
- var base64 = (msg.mime.contenttransferencoding=="base64")
- loop=msg.mime.next()
- msg.mime.seekto()
-
- var str=""
-
- for (loop=0; loop<msg.mime.linecount; loop++)
- {
- msg.nexttext()
-
- var line=msg.text
-
- if (base64)
- line = line.base64decode()
-
- if (line.length)
- str=str+line.slice(0, line.length-1)
-
- if (str.length>=2)
- {
- // is last character '='
- if (str.slice(str.length-1, str.length)!="=")
- {
- var index=str.length-1
-
- var char=str.slice(index, index+1)
- while ((index>=0)&&(isDigit(char))&&(char!="="))
- {
- index=index-1
- if (index>=0)
- char=str.slice(index, index+1)
- }
-
- if (char=="=")
- str=str.slice(0, index)
-
- if (session.webmail.indent)
- text=text+session.webmail.indentchar+" "
-
- text=text+wm.escape(str)
- if (!base64)
- text=text+"\n"
-
- str=""
- }
- else
- {
- str=str.slice(0, str.length-1)
- }
- }
- else
- {
- if (session.webmail.indent)
- text=text+session.webmail.indentchar+" "
-
- text=text+wm.escape(str)
- if (!base64)
- text=text+"\n"
-
- str=""
- }
-
- output.write(".")
- }
-
- if (str)
- {
- text=text+wm.escape(str)
- if (!base64)
- text=text+"\n"
- }
- }
- else if (request.command=="4")
- {
- // forward email
- subject="Fw: "+folder.message.subject
- }
- %>
- -->
- <TABLE BORDER="0" BGCOLOR="<%=border%>" WIDTH="100%" HEIGHT="<%=bodyheight%>" CELLPADDING="0" CELLSPACING="0"><TR><TD> </TD><TD VALIGN="TOP">
-
- <FORM NAME="ftgate" METHOD="POST" onSubmit="return isOK(this)" ACTION="deliver.fts">
- <INPUT TYPE="HIDDEN" NAME="config" VALUE="1">
- <INPUT TYPE="HIDDEN" NAME="tocc" VALUE="">
- <INPUT TYPE="HIDDEN" NAME="command" VALUE="1">
- <INPUT TYPE="HIDDEN" NAME="param1" VALUE="">
-
- <TABLE <%=table%> CELLPADDING="0" CELLSPACING="0">
- <TR>
- <TD>
- <TABLE BORDER="0" WIDTH="100%">
- <TR>
- <TH>
- <%
- if (ldap.typeof()=="object")
- output.writeln("<A HREF=\"javascript:onAddress(1)\">To</A>")
- else
- output.writeln("To")
- %>
- </TH><TD><INPUT TYPE="EDIT" NAME="to" SIZE="<%=size40%>" VALUE="<%=to%>"></TD>
- <TH ROWSPAN="3" VALIGN="TOP">Priority</TH>
- <TD ROWSPAN="3" VALIGN="TOP">
- <SELECT NAME="PRIORITY">
- <OPTION VALUE="1">High</OPTION>
- <OPTION VALUE="3" SELECTED>Normal</OPTION>
- <OPTION VALUE="5">Low</OPTION>
- </SELECT>
- </TD>
- </TR>
- <TR>
- <TH>
- <%
- if (ldap.typeof()=="object")
- output.writeln("<A HREF=\"javascript:onAddress(0)\">CC</A>")
- else
- output.writeln("CC")
- %>
- </TH><TD><INPUT TYPE="EDIT" NAME="cc" SIZE="<%=size40%>" VALUE="<%=cc%>"></TD>
- </TR>
- <TR>
- <TH>Subject</TH><TD><INPUT TYPE="EDIT" NAME="subject" SIZE="<%=size40%>" VALUE="<%=subject%>"></TD>
- </TR>
- <TR>
- <TD COLSPAN="4"><TEXTAREA NAME="body" ROWS="15" COLS="<%=size60%>" CLASS="TEXT100">
- <%=text%></TEXTAREA></TD>
- </TR>
- </TABLE>
- </TD>
- </TR>
- <TR>
- <TD>
- <TABLE CLASS="box" WIDTH="100%">
- <TR>
- <TD>
- <TABLE BORDER="0" WIDTH="100%">
- <TR>
- <TD ALIGN="RIGHT">
- <A HREF="javascript:onSend()"
- onMouseDown="change('sendA', 'send', 1)"
- onMouseOut="change('sendA', 'send', 0)"><IMG SRC="<%=buttons%>send.gif" NAME="sendA" BORDER="0" WIDTH="50" HEIGHT="20" ALT="Send message"></A>
- <A HREF="javascript:onCancel()"
- onMouseDown="change('cancelA', 'cancel', 1)"
- onMouseOut="change('cancelA', 'cancel', 0)"><IMG SRC="<%=buttons%>cancel.gif" NAME="cancelA" BORDER="0" WIDTH="50" HEIGHT="20" ALT="Cancel message"></A>
- </TD>
- </TR>
- </TABLE>
- </TD>
- </TR>
- </TABLE>
- </TD>
- </TR>
- </TABLE>
- </FORM>
- </TD><TD WIDTH="10"> </TD></TD></TR></TABLE>
- </BODY>
- </HTML>
-