2025-04-27 07:49:33 -04:00

331 lines
9.1 KiB
Plaintext

<% Response.Expires = 0 %>
<%
L_PAGETITLE_TEXT = "Microsoft SMTP Server Administration"
L_NAME_TEXT = "Name:"
L_PATH_TEXT = "Path:"
L_DIRECTORYSON_TEXT = "Directories on:"
L_CANNOT_REMOVE_DIRECTORY_ERRORMESSAGE = "Cannot remove directory. A minimum of one directory is required."
L_REMOVE_HOME_DIRECTORY_ERRORMESSAGE = "If you remove the home directory, you may not be able to configure the server in the future. Are you sure you want to remove the home directory?"
L_REMOVE_THIS_DIRECTORY_TEXT = "Are you sure you want to remove this directory?"
%>
<% REM Directories Page head frame (in frameset with head, list) %>
<% REM Get variables %>
<% REM svr = Server name %>
<% REM a = Action to be performed by server-side code (remove) %>
<% REM SelectedDir = Directory edited by smdired.asp %>
<% svr = Session("svr") %>
<% a = Request("a") %>
<% SelectedDir = Request("SelectedDir") %>
<% REM Index of Directory to Remove %>
<% removeIndex = Request("removeIndex") %>
<% REM Include _cnst file to force logon by anonymous users (if access denied, body of file ignored) %>
<!--#include file="_cnst.asp" -->
<% if (cont = true) then %>
<% On Error Resume Next %>
<% Set admin = Server.CreateObject("Smtpadm.Admin.1") %>
<% if (Err <> 0) then %>
<script language="javascript">
alert("<% = Err.description %> : Line #27");
</script>
<% end if %>
<% On Error Resume Next %>
<% admin.server = svr %>
<% if (Err <> 0) then %>
<script language="javascript">
alert("<% = Err.description %> : Line #35");
</script>
<% end if %>
<% On Error Resume Next %>
<% admin.ServiceInstance = Session("ServiceInstance") %>
<% if (Err <> 0) then %>
<script language="javascript">
alert("<% = Err.description %> : Line #43");
</script>
<% end if %>
<% REM Instantiate Virtual Server object %>
<% On Error Resume Next %>
<% Set VServer = admin.VirtualServerAdmin %>
<% if (Err <> 0) then %>
<script language="javascript">
alert("<% = Err.description %> : Line #53");
</script>
<% end if %>
<% REM Set Server %>
<% On Error Resume Next %>
<% VServer.Server = svr %>
<% if (Err <> 0) then %>
<script language="javascript">
alert("<% = Err.description %> : Line #62");
</script>
<% end if %>
<% REM Set Service Instance %>
<% On Error Resume Next %>
<% VServer.ServiceInstance = Session("ServiceInstance") %>
<% if (Err <> 0) then %>
<script language="javascript">
alert("<% = Err.description %> : Line #71");
</script>
<% end if %>
<% REM Get pointer to VirtualRoots %>
<% On Error Resume Next %>
<% set Vroots = admin.VirtualDirectoryAdmin %>
<% if (Err <> 0) then %>
<script language="javascript">
alert("<% = Err.description %> : Line #80");
</script>
<% end if %>
<% REM Set Server %>
<% On Error Resume Next %>
<% Vroots.server = svr %>
<% if (Err <> 0) then %>
<script language="javascript">
alert("<% = Err.description %> : Line #89");
</script>
<% end if %>
<% REM Set Service Instance %>
<% On Error Resume Next %>
<% Vroots.ServiceInstance = Session("ServiceInstance") %>
<% if (Err <> 0) then %>
<script language="javascript">
alert("<% = Err.description %> : Line #98");
</script>
<% end if %>
<% REM Enumerate Vroots %>
<% On Error Resume Next %>
<% Vroots.Enumerate %>
<% if (Err <> 0) then %>
<script language="javascript">
alert("<% = Err.description %> : Line #106");
</script>
<% end if %>
<% REM Perform remove action %>
<% if (a = "remove") then %>
<script language="javascript">
alert("<%= removeIndex %> ");
</script>
<% On Error Resume Next %>
<% Vroots.GetNth(removeIndex) %>
<% if (Err <> 0) then %>
<script language="javascript">
alert("<% = Err.description %> : Line #120");
</script>
<% end if %>
<% On Error Resume Next %>
<% Vroots.Delete %>
<% if (Err <> 0) then %>
<script language="javascript">
alert("<% = Err.description %> : Line #128");
</script>
<% end if %>
<% end if %>
<HTML>
<HEAD>
<TITLE><% = L_PAGETITLE_TEXT %></TITLE>
<SCRIPT LANGUAGE="javascript">
<% REM Create uForm object and methods %>
var uForm = new Object();
uForm.itemList = new Array();
uForm.DirHome = "false";
uForm.selectedItem = 1;
uForm.selectItem = selectItem;
uForm.addItem = addItem;
uForm.removeItem = removeItem;
uForm.editItem = editItem;
<% REM Enumerate directories into uForm.itemList array %>
<% On Error Resume Next %>
<% Vroots.Enumerate %>
<% if (Err <> 0) then %>
alert("<% = Err.description %> : Line #155");
<% end if %>
<% REM Get count of Virtual Directories %>
<% cVroots = Vroots.Count %>
<% set nntpadmin = Server.CreateObject("Nntmadm.Admin.1") %>
<% For i = 0 to cVroots - 1 %>
<% Vroots.GetNth(i) %>
<% REM need Tokenize function %>
<% DirDirectory = nntpadmin.Tokenize(Vroots.Directory) %>
<% DirDirectory = Vroots.Directory %>
<% DirDirectory = Replace(DirDirectory, "\", "\\") %>
<% DirVirtualName = Vroots.VirtualName %>
<% REM DirAddEntryError = serv.DirAddEntryError %>
<% REM SelectedRoot variable (passed from pop-up) indicates which item had been selected before page was reloaded %>
<% REM If SelectedRoot equals current DirRoot, set selectedItem variable to current index %>
<% if ((DirVirtualName = Request("SelectedRoot")) AND (Request("SelectedRoot") <> "")) then %>
uForm.selectedItem = <% = i %>;
<% end if %>
<% REM if (DirAddEntryError <> 0) then %>
<% REM DirError = serv.ErrorToString(DirAddEntryError) %>
<% REM end if %>
uForm.itemList[<% = i %>] = new Object();
uForm.itemList[<% = i %>].DirDirectory = "<% = DirDirectory %>";
uForm.itemList[<% = i %>].DirVirtualName = "<% = DirVirtualName %>";
uForm.itemList[<% = i %>].DirError = "";
<% Next %>
<% REM Determine browser to set pop-up window size %>
<% if Instr(Request.ServerVariables("HTTP_USER_AGENT"),"IE") then %>
var winstr = "width=420,height=490,directories=no,status=no,scrollbars=auto,resize=no";
<% else %>
var winstr = "width=450,height=580,directories=no,status=no,scrollbars=auto,resize=no";
<% end if %>
<% REM Javascript function selectItem changes selectedItem value, reloads list at specified position %>
function selectItem(index)
{
uForm.selectedItem = index;
parent.list.location = "smdirls.asp"
}
<% REM Javascript function addItem opens pop-up window %>
<% REM DirHome variable (true/false) specifies whether a home directory already exists %>
function addItem()
{
win = window.open("smdired.asp?a=new&svr=<% = svr %>&DirHome=" + uForm.DirHome,"PropWindow",winstr);
if (win.opener == null)
{
win.opener = self;
}
}
<% REM Javascript function removeItem displays confirm, reloads head frame with "a=remove" parameter %>
<% REM Displays alert message if user attempts to remove last directory; displays confirm if user attempts to remove home directory %>
function removeItem()
{
if (uForm.itemList.length == 1)
{
alert("<% = L_CANNOT_REMOVE_DIRECTORY_ERRORMESSAGE %>");
return
}
else
{
index = uForm.selectedItem;
DirVirtualName = uForm.itemList[index].DirVirtualName;
if (DirVirtualName == "")
{
if (confirm("<% = L_REMOVE_HOME_DIRECTORY_ERRORMESSAGE %>"))
{
self.location.href = "smdirhd.asp?svr=<% = svr %>&a=remove&removeIndex=" + index;
}
}
else
{
if (confirm("<% = L_REMOVE_THIS_DIRECTORY_TEXT %>"))
{
self.location.href = "smdirhd.asp?svr=<% = svr %>&a=remove&removeIndex=" + index;
}
}
}
}
<% REM Javascript function editItem opens pop-up with specific parameters %>
<% REM DirHome variable (true/false) specifies whether a home directory already exists %>
function editItem()
{
if(uForm.itemList.length > 1)
{
index = uForm.selectedItem;
DirVirtualName = uForm.itemList[index].DirVirtualName;
win = window.open("smdired.asp?svr=<% = svr %>&a=edit&DirVirtualName=" + DirVirtualName + "&DirHome=" + uForm.DirHome + "&index=" + index,"PropWindow",winstr);
if (win.opener == null)
{
win.opener = self;
}
}
}
<% REM Javascript function loadList loads list frame after header is completed %>
function loadList()
{
parent.list.location = "smdirls.asp";
}
function loadToolBar()
{
top.toolbar.location.href = "nre.asp";
}
</SCRIPT>
</HEAD>
<BODY BGCOLOR="#CCCCCC" TEXT="#000000" TOPMARGIN=10 OnLoad="loadToolBar();">
<TABLE BORDER=0 WIDTH=600 CELLPADDING=2>
<TR>
<TD COLSPAN=3>
<IMG SRC="images/gnicttl.gif" ALIGN="textmiddle" HEIGHT=10 WIDTH=10>&nbsp;<FONT SIZE=2 FACE="Arial"><B><%= L_DIRECTORYSON_TEXT %>&nbsp;&nbsp;</B></FONT><FONT SIZE=3 FACE="Times New Roman"><I><% = svr %></I><BR>&nbsp;</FONT>
</TD>
</TR>
<TR>
<TD WIDTH=200><FONT SIZE=2 FACE="Arial"><B><%= L_NAME_TEXT %></B></FONT></TD>
<TD WIDTH=200><FONT SIZE=2 FACE="Arial"><B><%= L_PATH_TEXT %></B></FONT></TD>
<TD WIDTH=200><FONT SIZE=2 FACE="Arial">&nbsp;</FONT></TD>
</TR>
</TABLE>
<% REM Load list frame after head frame is finished loading %>
<SCRIPT LANGUAGE="javascript">
timeList = setTimeout('loadList()',500);
</SCRIPT>
</BODY>
</HTML>
<% end if %>