home *** CD-ROM | disk | FTP | other *** search
/ Chip 1998 February / CHIP_2_98.iso / software / pelne / optionp / ims.cab / smseshd.asp < prev    next >
Text File  |  1997-10-12  |  8KB  |  311 lines

  1. <% Response.Expires = 0 %>
  2.  
  3. <%
  4. REM LOCALIZATION
  5.  
  6.  
  7. L_NOUSERS_TEXT             = "There are no currently active sessions"
  8. L_PAGETITLE_TEXT        = "Microsoft SMTP Server Administration"
  9. L_DISCONNECTALL_TEXT    = "Are you sure you want to disconnect all users?"
  10. L_DISCONNECTUSER_TEXT    = "Are you sure you want to disconnect this user?"    
  11.  
  12. REM END LOCALIZATION
  13. %>
  14.  
  15. <% REM Get starting number for groups to show %>
  16. <% startNum = Request("startNum") %>
  17. <% REM if startNum has a value then use it, otherwise use start value of 1 %>
  18. <% if (startNum = "") then %>
  19.     <% startNum = 1 %>
  20. <% end if %>
  21.  
  22. <% startNumClean = startNum %>
  23.     
  24. <% REM Set number of groups to display per page %>
  25. <% SessionsPerPage = 5 %>
  26.  
  27. <% svr = Request("svr") %>
  28. <% save = Request("save") %>
  29. <% id = Request("id") %>
  30. <% username = Request("username") %>
  31. <% Host = Request("Host") %>
  32. <% UserId = Request("UserId") %>
  33.  
  34. <!--#include file="_cnst.asp" -->
  35.  
  36. <% if (cont = true) then %>
  37.  
  38. <% REM create admin object %>
  39. <% On Error Resume Next %>
  40. <% set adminObj = Server.CreateObject("SmtpAdm.Admin.1") %>
  41. <% if (Err <> 0) then %>
  42.     <script language="javascript">
  43.         alert('<% = Err.description %>');
  44.     </script>
  45. <% end if %>
  46.  
  47. <% adminObj.server = svr %>
  48.  
  49. <% REM create sessions object %>
  50. <% On Error Resume Next %>
  51. <% set sessionObj = Server.CreateObject("SmtpAdm.Sessions.1") %>
  52. <% if (Err <> 0) then %>
  53.     <script language="javascript">
  54.         alert('<% = Err.description %>');
  55.     </script>
  56. <% end if %>
  57.  
  58. <% REM set sessions object server %>
  59. <% sessionObj.server = svr %>
  60.  
  61. <% REM set sessions object service instance %>
  62. <% sessionObj.serviceInstance = Session("ServiceInstance") %>
  63.  
  64. <HTML>
  65. <HEAD>
  66. <TITLE><% = L_PAGETITLE_TEXT %></TITLE>
  67.  
  68. <% REM Disconnect and Disconnect All %>
  69. <% if (save = "disconnect") then %>
  70.  
  71.     <% sessionObj.Enumerate %>
  72.     <% sessionObj.UserId = UserId %>
  73.  
  74.     <% On Error Resume Next %>
  75.     <% sessionObj.Terminate %>
  76.     <% if (Err <> 0 ) then %>
  77.             <SCRIPT LANGUAGE = "javascript">
  78.            alert("<% = Err.description %>");
  79.         </SCRIPT>
  80.     <% else %>
  81.         <SCRIPT LANGUAGE="javascript">
  82.             self.location = "smseshd.asp?svr=<% = svr %>"
  83.         </SCRIPT>
  84.     <% end if %>
  85.  
  86. <% elseif (save = "disconnectall" ) then %>
  87.  
  88.        <% On Error Resume Next %>
  89.     <% sessionObj.Enumerate %>
  90.     <% if (Err <> 0) then %>
  91.         <SCRIPT LANGUAGE="javascript">
  92.                alert ("% = Err.description %>");
  93.         </SCRIPT>
  94.     <% end if %>
  95.  
  96.     <% On Error Resume Next %>
  97.     <% sessionObj.TerminateAll %>
  98.     <% if (Err <> 0) then %>
  99.         <SCRIPT LANGUAGE="javascript">
  100.                alert ("<% = Err.description %>");
  101.         </SCRIPT>
  102.     <% else %>
  103.         <SCRIPT LANGUAGE="javascript">
  104.             self.location = "smseshd.asp?svr=<% = svr %>"
  105.         </SCRIPT>
  106.     <% end if %>
  107.  
  108. <% end if %>
  109.  
  110. <script language="javascript">
  111.  
  112. <% REM Create uForm object and methods %>
  113.  
  114. var uForm = new Object();
  115. uForm.itemList = new Array();
  116. uForm.startNum = "<% = startNum %>";
  117. uForm.SessionsPerPage = <% = SessionsPerPage %>;
  118. uForm.selectedItem = uForm.startNum - 1;
  119. uForm.disconnectUser = disconnectUser;
  120. uForm.disconnectAll = disconnectAll;
  121. uForm.selectItem = selectItem;
  122. uForm.loadList = loadList;
  123. uForm.next = next;
  124. uForm.previous = previous;
  125. uForm.refresh = refresh;
  126.  
  127.  
  128. <% REM get currently active sessions %>
  129.  
  130. <% REM Enumerate sessions %>
  131. <% On Error Resume Next %>
  132. <% sessionObj.Enumerate %>
  133. <% if ( Err <> 0 ) then %>            
  134.     alert ( "<% = Err.description %>" );            
  135. <% end if %>
  136.  
  137. <% REM get number of active sessions %>
  138. <% numSessions = sessionObj.Count %>
  139.  
  140. uForm.numSessions = "<% = numSessions %>";
  141.  
  142.  
  143. <% if (numSessions = 0) then %>
  144.     <% startNumClean = 0 %>
  145. <% End If %>
  146. uForm.startNumClean = "<% = startNumClean %>";
  147.  
  148.  
  149. <% i = startNum - 1 %>
  150.  
  151. <% REM counter for uForm object array %>
  152. var i = <% = startNum - 1 %>;
  153.  
  154. <% REM loop through active sessions %>
  155. <% While( (i < numSessions) AND ( i < (startNum + SessionsPerPage - 1) ) ) %>
  156.     <% REM get each session %>
  157.     <% sessionObj.GetNth(i) %>
  158.     <% REM create a new uForm object for each active session and set properties %>
  159.     uForm.itemList[i] = new Object();
  160.     uForm.itemList[i].id = "<% = i %>";
  161.     username = "<% = sessionObj.UserName %>";
  162.     if( username == "" )
  163.     {
  164.         username = "unknown";
  165.     }
  166.     uForm.itemList[i].username = "<% = sessionObj.UserName %>";
  167.     uForm.itemList[i].Host = "<% = sessionObj.Host %>";
  168.     uForm.itemList[i].StartTime = "<% = sessionObj.ConnectTime %>";
  169.     uForm.itemList[i].UserId = "<% = sessionObj.UserId %>";
  170.     i++;
  171.     <% i = i + 1 %>
  172. <% Wend %>
  173.  
  174. <% startNum = startNum + SessionsPerPage %>
  175.  
  176. top.menu.document.hiddenform.nSessionListStart.value = "<% = startNum %>";
  177.  
  178. function next()
  179. {
  180.     if( parseInt(top.menu.document.hiddenform.nSessionListStart.value) <= parseInt(uForm.numSessions) )
  181.     {
  182.         parent.head.location = "smseshd.asp?svr=<% = svr %>&startNum=" + 
  183.         top.menu.document.hiddenform.nSessionListStart.value;
  184.     }
  185. }
  186.  
  187. function previous()
  188. {
  189.     sum = uForm.SessionsPerPage + 1;
  190.     if( sum != parseInt(top.menu.document.hiddenform.nSessionListStart.value) )
  191.     {
  192.         parent.head.location = "smseshd.asp?svr=<% = svr %>&startNum=" + 
  193.         (top.menu.document.hiddenform.nSessionListStart.value - ( uForm.SessionsPerPage * 2 ) );
  194.     }
  195. }    
  196.  
  197. function refresh()
  198. {
  199.     parent.head.location = "smseshd.asp?svr=<% = svr %>&startNum=";
  200. }
  201.  
  202. <% REM Javascript function selectItem (if IE, reloads list at specified position -- broken in Netscape) %>
  203. function selectItem(index)
  204. {
  205.     uForm.selectedItem = index;
  206.     <% if Instr(Request.ServerVariables("HTTP_USER_AGENT"),"IE") then %>
  207.     if (index == 0)
  208.     {
  209.         parent.list.location = "smsesls.asp"
  210.     }
  211.     else
  212.     {
  213.         parent.list.location = "smsesls.asp#" + (index-1);
  214.     }            
  215.     <% else %>
  216.         parent.list.location = "smsesls.asp"
  217.     <% end if %>
  218. }
  219.  
  220. function disconnectAll()
  221. {
  222.     if (uForm.numSessions > 0)
  223.     {
  224.         if (confirm("<%= L_DISCONNECTALL_TEXT %>"))
  225.         {
  226.         self.location = "smseshd.asp?save=disconnectall&svr=<% = svr %>";
  227.         }
  228.     }
  229.     else
  230.     {
  231.         alert("<% = L_NOUSERS_TEXT %>");
  232.     }
  233. }
  234.  
  235. function disconnectUser()
  236. {
  237.     if (uForm.numSessions > 0)
  238.     {
  239.         if (confirm("<%= L_DISCONNECTUSER_TEXT %>"))
  240.         {
  241.             if( uForm.itemList[uForm.selectedItem].username == "unknown" )
  242.             {
  243.                 usernameToDelete = "";
  244.             }
  245.             else
  246.             {
  247.                 usernameToDelete = uForm.itemList[uForm.selectedItem].username;
  248.             }
  249.  
  250.             self.location = "smseshd.asp?save=disconnect&svr=<% = svr %>&username=" + usernameToDelete + "&Host=" + uForm.itemList[uForm.selectedItem].Host + "&UserId=" + uForm.itemList[uForm.selectedItem].UserId;
  251.         }
  252.     }
  253.     else
  254.     {
  255.         alert("<% = L_NOUSERS_TEXT %>");
  256.     }
  257.     
  258. }
  259.  
  260. <% REM Javascript function loadList loads list frame after header is completed %>
  261. function loadList()
  262. {
  263.     parent.list.location = "smsesls.asp?svr=<% = svr %>";
  264. }    
  265.  
  266. </script>
  267. </HEAD>
  268. <BODY BGCOLOR="#CCCCCC" TEXT="#000000" TOPMARGIN=10>
  269. <TABLE cellpadding="2" cellspacing="0" WIDTH="425" BORDER="0">
  270.     <TR>
  271.         <TD COLSPAN=4>
  272.             <P><IMG SRC="images/gnicttl.gif" ALIGN="textmiddle" HEIGHT=10 WIDTH=10> <FONT SIZE=2 FACE="Arial"><B>Current Sessions on  </B></FONT><FONT SIZE=3 FACE="Times New Roman"><I><% = svr %></I><BR> </FONT>
  273.         </TD>
  274.     </TR>
  275.  
  276.     <TR>
  277.         <TD WIDTH=25>
  278.              
  279.         </TD>
  280.         <TD COLSPAN=3>
  281.             <FONT SIZE=2 FACE="Arial">
  282.             <% If (numSessions <> 0) Then %>
  283.                 Results: <b><% = startNumClean %></b> - <b><% if( (startNumClean + SessionsPerPage - 1) < numSessions ) then %>
  284.                 <% = startNumClean + SessionsPerPage - 1 %><% else %><% = numSessions %><% end if %></b> out of <b><% = numSessions %></b></br>
  285.             <% Else %>
  286.                 <b><% = L_NOUSERS_TEXT %></b><br>
  287.             <% End If %>
  288.             </FONT>        
  289.         </TD>
  290.     </TR>
  291.     <TR>
  292.         <TD WIDTH=25> </TD>
  293.         <TD WIDTH=125 ALIGN="left">
  294.             <FONT SIZE=2 FACE="Arial"><B>User</B></FONT>
  295.         </TD>
  296.         <TD WIDTH=125 ALIGN="left">
  297.             <FONT SIZE=2 FACE="Arial"><B>From</B></FONT>
  298.         </TD>
  299.         <TD WIDTH=150 ALIGN="left">
  300.             <FONT SIZE=2 FACE="Arial"><B>Time</FONT>
  301.         </TD>        
  302.     </TR>
  303. </TABLE>
  304. <% REM Load list page after head has completely loaded %>
  305. <SCRIPT LANGUAGE="javascript">
  306.     timeList = setTimeout('loadList()',500);
  307. </SCRIPT>
  308. </BODY>
  309. </HTML>
  310. <% end if %>
  311.