home *** CD-ROM | disk | FTP | other *** search
/ bombers.k12.ar.us / bombers.k12.ar.us.tar / bombers.k12.ar.us / survey_unconfigured / EmailMessageDetails.asp < prev    next >
Text File  |  2006-10-25  |  20KB  |  596 lines

  1. <!--#Include File="Include/Top_inc.asp"-->
  2. <%
  3. '***********************************************************************
  4. '   Application: SelectSurveyASP Advanced v8.1.11
  5. '   Author: Aaron Baril for ClassApps.com
  6. '   Page Description: This page allows a user to view and manage
  7. '                      the list of email addresses for an email list.
  8. '
  9. '   COPYRIGHT NOTICE                                
  10. '
  11. '   See attached Software License Agreement
  12. '
  13. '   (c) Copyright 2002 - 2006 by ClassApps.com.  All rights reserved.
  14. '***********************************************************************
  15. %>
  16. <!--#Include File="Include/Config_inc.asp"-->
  17. <!--#Include File="Include/SurveyUtility_inc.asp"-->
  18. <!--#Include File="Include/Utility_inc.asp"-->
  19. <!--#Include File="Include/adovbs_inc.asp"-->
  20. <!--#Include File="Include/Constants_inc.asp"-->
  21. <!--#Include File="Include/SurveySecurity_inc.asp"-->
  22. <!--#Include File="Include/CurrentUser_inc.asp"-->
  23.  
  24. <%
  25.     'If the user does not have "Create" or "Admin" permission, redirect to the access denied page.
  26.     If lngUserSecurityLevel <> SUR_SECURITY_LEVEL_CREATE And lngUserSecurityLevel <> SUR_SECURITY_LEVEL_ADMIN Then
  27.         Response.Redirect "AccessDenied.asp?Reason=" & SUR_ACCESS_DENIED_NOT_ADMIN_SECURITY_LEVEL
  28.     End If
  29.  
  30.     Dim lngEmailListID
  31.     Dim strEmailListName
  32.     Dim strSQL
  33.     Dim rsEmailsSent
  34.     Dim rsEmailMessageDetails
  35.     Dim lngEmailMessageID
  36.     Dim strSortColumn
  37.     Dim strSortOrder
  38.     Dim strTempSortOrder
  39.     Dim lngNumberPerPage
  40.     Dim lngStartNumber
  41.     Dim lngTotalEmailsSentCount    
  42.     Dim lngPreviousNumber
  43.     Dim lngNextNumber
  44.     Dim lngDisplayedCount
  45.     Dim i
  46.     Dim lngCurrentPageEndNumber
  47.     Dim strTableRowColor
  48.         
  49.     'Initialization
  50.     Set rsEmailsSent = Server.CreateObject("ADODB.Recordset")
  51.     Set rsEmailMessageDetails = Server.CreateObject("ADODB.Recordset")
  52.     lngDisplayedCount = 0
  53.  
  54.     'Initialize the row color
  55.     strTableRowColor = "TableRowLightColor"
  56.  
  57.     'The first time the page is called, the values are in the query string.  After that, the values are in the form.
  58.     If Len(Request.QueryString("EmailListID")) > 0 Then
  59.         lngEmailListID = Request.QueryString("EmailListID")
  60.         lngEmailMessageID = Request.QueryString("EmailMessageID")
  61.         lngTotalEmailsSentCount = GetEmailsSentCount(lngEmailMessageID)
  62.         strEmailListName = Request.QueryString("EmailListName")
  63.         strSortColumn = "email_address"
  64.         strSortOrder = SUR_SORT_ORDER_ASCENDING
  65.         lngNumberPerPage = 50
  66.         If lngNumberPerPage > lngTotalEmailsSentCount Then
  67.             lngCurrentPageEndNumber = lngTotalEmailsSentCount
  68.         Else
  69.             lngCurrentPageEndNumber = CLng(lngStartNumber) + CLng(lngNumberPerPage)
  70.         End If
  71.         lngStartNumber = 1
  72.         lngPreviousNumber = -1
  73.         If lngTotalEmailsSentCount > 50 Then
  74.             lngNextNumber = 51
  75.         Else
  76.             lngNextNumber = -1
  77.         End If
  78.     Else
  79.         lngEmailListID = Request.Form("EmailListID")
  80.         lngEmailMessageID = Request.Form("EmailMessageID")
  81.         lngTotalEmailsSentCount = GetEmailsSentCount(lngEmailMessageID)
  82.         strEmailListName = Request.Form("EmailListName")
  83.         strSortColumn = Request.Form("SortColumn")
  84.         strSortOrder = Request.Form("SortOrder")
  85.         lngNumberPerPage = Request.Form("NumberPerPage")
  86.         lngStartNumber = Request.Form("StartNumber")
  87.         lngPreviousNumber = CLng(lngStartNumber) - CLng(lngNumberPerPage)
  88.         If lngPreviousNumber <= 0 Then
  89.             If CLng(lngStartNumber) > 1 Then
  90.                 lngPreviousNumber = 1
  91.             Else
  92.                 lngPreviousNumber = -1
  93.             End If
  94.         End If
  95.         lngNextNumber = CLng(lngStartNumber) + CLng(lngNumberPerPage)
  96.         If CLng(lngNextNumber) > CLng(lngTotalEmailsSentCount) Then
  97.             lngNextNumber = -1
  98.         End If
  99.         If lngNumberPerPage < lngTotalEmailsSentCount Then
  100.             lngCurrentPageEndNumber = lngTotalEmailsSentCount
  101.         Else
  102.             If CLng(lngStartNumber) + CLng(lngNumberPerPage) > lngTotalEmailsSentCount Then
  103.                 lngCurrentPageEndNumber = lngTotalEmailsSentCount
  104.             Else
  105.                 lngCurrentPageEndNumber = CLng(lngStartNumber) + CLng(lngNumberPerPage) - 1
  106.             End If
  107.         End If
  108.     End If
  109. %>
  110.  
  111. <html>
  112. <head>
  113.     <title>Email Message Details</title>
  114.     <link rel="stylesheet" href="Resources/StyleSheet/SurveyStyle.css">
  115. </head>
  116.  
  117. <script language ="JavaScript" src="ClientInclude/Utility.js"></script>
  118. <script language="JavaScript">
  119. function sortList(strSortColumn, strSortOrder)
  120. {
  121.     document.forms['frmSortAndPaginate'].SortColumn.value = strSortColumn;
  122.     document.forms['frmSortAndPaginate'].SortOrder.value = strSortOrder;
  123.     document.forms['frmSortAndPaginate'].NumberPerPage.value = document.all['cboNumberPerPage'].value;
  124.     document.forms['frmSortAndPaginate'].submit();
  125. }
  126.  
  127. function displayCountChange()
  128. {
  129.     document.forms['frmSortAndPaginate'].NumberPerPage.value = document.all['cboNumberPerPage'].value;
  130.     document.forms['frmSortAndPaginate'].submit();
  131. }
  132.  
  133. function paginate(lngStartNumber)
  134. {
  135.     document.forms['frmSortAndPaginate'].StartNumber.value = lngStartNumber;
  136.     document.forms['frmSortAndPaginate'].NumberPerPage.value = document.all['cboNumberPerPage'].value;
  137.     document.forms['frmSortAndPaginate'].submit();
  138. }
  139. </script>
  140.  
  141. <body class="MainBodyStyle">
  142.  
  143. <!--#Include File="Include/FrameworkTop_inc.asp"-->
  144.  
  145. <table border="0" cellspacing="0" cellpadding="0" width="754" class="MediumBlueBackgroundColor">
  146.     <tr>
  147.         <td height="36" valign="center">
  148.               <span class="H1HeadingStyle"><a name="skipnav" tabindex="1">Email Message Details</a></span> <img style="cursor:hand" alt="Help" onClick="javascript:window.open('Help/Help.htm#EmailLists', null, 'menubar=no,toolbar=no,titlebar=no,status=no,left=10,top=10,scrollbars=yes,resizable=yes,height=550,width=770');" border="0" src="Resources/Images/Help.gif">
  149.         </td>
  150.     </tr>
  151. </table>
  152.  
  153. <!--#Include File="Include/FrameworkTop2_inc.asp"-->
  154.  
  155. <table width="740" border="0" cellpadding="0" cellspacing="6" class="LightGrayBackgroundColor">
  156.     <tr>
  157.         <td width="1"></td>
  158.         <td valign="center" height="40">
  159.             <span class="H2HeadingStyle">
  160.                 Message Details
  161.             </span>
  162.         </td>
  163.         <td width="1"> </td>
  164.     </tr>
  165. <%
  166.     'Get all of the details for the message
  167.     strSQL = "SELECT list_name, email_subject, email_from_address, html_yn, title, sent_date, email_sent_count, " & _
  168.              "email_response_count, email_body, email_cc_addresses, email_bcc_addresses " & _
  169.              "FROM sur_email_list el,  sur_email_message em, sur_survey s " & _
  170.              "WHERE el.email_list_id = em.email_list_id " & _
  171.              "AND em.survey_id = s.survey_id " & _
  172.              "AND email_message_id = " & lngEmailMessageID
  173.     rsEmailMessageDetails.Open ConvertSQL(strSQL), SURVEY_APP_CONNECTION, adOpenForwardOnly, adLockReadOnly, adCmdText
  174.     rsEmailMessageDetails.MoveFirst
  175. %>
  176. </table>
  177. <table border="0" cellpadding="0" cellspacing="0" width="100%"><tr><td height="1" background="Resources/Images/ThinDivider.gif"></td></tr>
  178. <table border="0" cellpadding="0" cellspacing="6" width="740" class="WhiteBackgroundColor">
  179.     <tr>
  180.         <td colspan="6" height="8"></td>
  181.     </tr>
  182.     <tr>
  183.         <td width="1" rowspan="12"> </td>
  184.         <td width="130" valign="top">
  185.             <table width="130" cellpadding="0" cellspacing="0">
  186.                 <tr>
  187.                     <td>
  188.                         <span class="NormalBold">
  189.                             Message Subject:
  190.                         </span>
  191.                     </td>
  192.                 </tr>
  193.             </table>
  194.         </td>
  195.         <td width="220">
  196.             <span class="Normal">
  197.                 <%=rsEmailMessageDetails("email_subject")%>
  198.             </span>
  199.         </td>
  200.         <td width="100" valign="top">
  201.             <span class="NormalBold">
  202.                 Date Sent:
  203.             </span>
  204.         </td>
  205.         <td width="250">
  206.             <span class="Normal">
  207.                 <%=CustomDateFormatDisplay(rsEmailMessageDetails("sent_date"))%>
  208.             </span>
  209.         </td>
  210.         <td width="1" rowspan="12"> </td>
  211.     </tr>
  212.     <tr>
  213.         <td valign="top">
  214.             <span class="NormalBold">
  215.                 Email List:
  216.             </span>
  217.         </td>
  218.         <td valign="top">
  219.             <span class="Normal">
  220.                 <%=rsEmailMessageDetails("list_name")%>
  221.             </span>
  222.         </td>
  223.         <td valign="top">
  224.             <span class="NormalBold">
  225.                 Survey:
  226.             </span>
  227.         </td>
  228.         <td>
  229.             <span class="Normal">
  230.                 <%=rsEmailMessageDetails("title")%>
  231.             </span>
  232.         </td>
  233.     </tr>
  234.     <tr>
  235.         <td valign="top">
  236.             <span class="NormalBold">
  237.                 Message Text:
  238.             </span>
  239.         </td>
  240.         <td colspan="3" valign="top">
  241.             <span class="Normal">
  242.                 <%=Replace(rsEmailMessageDetails("email_body"), vbCrLf, "<br>")%>
  243.             </span>
  244.         </td>
  245.     </tr>
  246.     <tr>
  247.         <td valign="top">
  248.             <span class="NormalBold">
  249.                 CC Emails:
  250.             </span>
  251.         </td>
  252.         <td colspan="3" valign="top">
  253.             <span class="Normal">
  254.                 <%=rsEmailMessageDetails("email_cc_addresses")%>
  255.             </span>
  256.         </td>
  257.     </tr>
  258.     <tr>
  259.         <td valign="top">
  260.             <span class="NormalBold">
  261.                 BCC Emails:
  262.             </span>
  263.         </td>
  264.         <td colspan="3" valign="top">
  265.             <span class="Normal">
  266.                 <%=rsEmailMessageDetails("email_bcc_addresses")%>
  267.             </span>
  268.         </td>
  269.     </tr>
  270.     <tr>
  271.         <td>
  272.             <span class="NormalBold">
  273.                 From Email:
  274.             </span>
  275.         </td>
  276.         <td>
  277.             <span class="Normal">
  278.                 <%=rsEmailMessageDetails("email_from_address")%>
  279.             </span>
  280.         </td>
  281.         <td>
  282.             <span class="NormalBold">
  283.                 HTML:
  284.             </span>
  285.         </td>
  286.         <td>
  287.             <span class="Normal">
  288.     <%
  289.                 If rsEmailMessageDetails("html_yn") = SUR_BOOLEAN_POSITIVE Then
  290.                     Response.Write SUR_BOOLEAN_POSITIVE_DISPLAY
  291.                 Else
  292.                     Response.Write SUR_BOOLEAN_NEGATIVE_DISPLAY
  293.                 End If
  294.     %>
  295.             </span>
  296.         </td>
  297.     </tr>
  298.     <tr>
  299.         <td>
  300.             <span class="NormalBold">
  301.                 Response Count:
  302.             </span>
  303.         </td>
  304.         <td>
  305.             <span class="Normal">
  306.                 <%=rsEmailMessageDetails("email_response_count")%>
  307.             </span>
  308.         </td>
  309.         <td>
  310.             <span class="NormalBold">
  311.                 Sent Count:
  312.             </span>
  313.         </td>
  314.         <td>
  315.             <span class="Normal">
  316.                 <%=rsEmailMessageDetails("email_sent_count")%>
  317.             </span>
  318.         </td>
  319.     </tr>
  320. <%
  321.     'Clean up
  322.     rsEmailMessageDetails.Close
  323.     Set rsEmailMessageDetails = Nothing
  324. %>
  325.     <tr>
  326.         <td valign="center" colspan="4">
  327.             <table border="0" cellspacing="0" cellpadding="0" width="100%">
  328.                 <tr>
  329.                     <td valign="center" colspan="4" align="left" height="34" width="50%">
  330.                         <span class="QuestionSectionHeadingSpanStyle">
  331.                             Emails Sent
  332.                         </span>
  333.                     </td>
  334.                     <td valign="bottom" align="right" colspan="4" height="34" width="50%">
  335.                         <span class="InlineHelpSpanStyle">
  336.                             Displaying 
  337. <%
  338.                             If CStr(lngStartNumber) = CStr(lngCurrentPageEndNumber) Then
  339.                                 Response.Write lngStartNumber
  340.                             Else
  341.                                 Response.Write lngStartNumber & "-" & lngCurrentPageEndNumber
  342.                             End If
  343. %>    
  344.                             of <%=lngTotalEmailsSentCount%>
  345.                         </span>
  346.                              
  347.                     </td>
  348.                 </tr>
  349.             </table>
  350.         </td>
  351.     </tr>
  352.     <tr>
  353.         <td valign="top" colspan="4" align="left">
  354.             <table cellpadding="3" cellspacing="0" border="0" width="704" summary="This section displays a list of email addresses that this emails message was sent to.">
  355.                 <tr class="TableHeadingColor" height="40">
  356.                     <th id="EmailAddress" width="194" valign="center">
  357. <%
  358.                         'Determine the sort order if the user clicks this column heading
  359.                         If strSortColumn = "email_address" Then
  360.                             If strSortOrder = SUR_SORT_ORDER_ASCENDING Then
  361.                                 strTempSortOrder = SUR_SORT_ORDER_DESCENDING
  362.                             Else
  363.                                 strTempSortOrder = SUR_SORT_ORDER_ASCENDING
  364.                             End If
  365.                         Else
  366.                             strTempSortOrder = SUR_SORT_ORDER_ASCENDING
  367.                         End If
  368. %>
  369.                         <span class="TableHeadingBold"><a href="javascript:sortList('email_address', '<%=strTempSortOrder%>');">Email Address</a></span>
  370.                     </th>
  371.                     <th id="FirstName" width="95" valign="center">
  372. <%
  373.                         'Determine the sort order if the user clicks this column heading
  374.                         If strSortColumn = "first_name" Then
  375.                             If strSortOrder = SUR_SORT_ORDER_ASCENDING Then
  376.                                 strTempSortOrder = SUR_SORT_ORDER_DESCENDING
  377.                             Else
  378.                                 strTempSortOrder = SUR_SORT_ORDER_ASCENDING
  379.                             End If
  380.                         Else
  381.                             strTempSortOrder = SUR_SORT_ORDER_ASCENDING
  382.                         End If
  383. %>
  384.                         <span class="TableHeadingBold"><a href="javascript:sortList('first_name', '<%=strTempSortOrder%>');">First Name</a></span>
  385.                     </th>
  386.                     <th id="LastName" width="135" valign="center">
  387. <%
  388.                         'Determine the sort order if the user clicks this column heading
  389.                         If strSortColumn = "last_name" Then
  390.                             If strSortOrder = SUR_SORT_ORDER_ASCENDING Then
  391.                                 strTempSortOrder = SUR_SORT_ORDER_DESCENDING
  392.                             Else
  393.                                 strTempSortOrder = SUR_SORT_ORDER_ASCENDING
  394.                             End If
  395.                         Else
  396.                             strTempSortOrder = SUR_SORT_ORDER_ASCENDING
  397.                         End If
  398. %>
  399.                         <span class="TableHeadingBold"><a href="javascript:sortList('last_name', '<%=strTempSortOrder%>');">Last Name</a></span>
  400.                     </th>
  401.                     <th id="ResponseDate" width="125" align="left" valign="center">
  402. <%
  403.                         'Determine the sort order if the user clicks this column heading
  404.                         If strSortColumn = "response_date" Then
  405.                             If strSortOrder = SUR_SORT_ORDER_ASCENDING Then
  406.                                 strTempSortOrder = SUR_SORT_ORDER_DESCENDING
  407.                             Else
  408.                                 strTempSortOrder = SUR_SORT_ORDER_ASCENDING
  409.                             End If
  410.                         Else
  411.                             strTempSortOrder = SUR_SORT_ORDER_ASCENDING
  412.                         End If
  413. %>
  414.                         <span class="TableHeadingBold"><a href="javascript:sortList('response_date', '<%=strTempSortOrder%>');">Response Date</a></span>
  415.                     </th>
  416.                     <th id="CurrentStatus" width="90" align="left" valign="center">
  417. <%
  418.                         'Determine the sort order if the user clicks this column heading
  419.                         If strSortColumn = "current_status" Then
  420.                             If strSortOrder = SUR_SORT_ORDER_ASCENDING Then
  421.                                 strTempSortOrder = SUR_SORT_ORDER_DESCENDING
  422.                             Else
  423.                                 strTempSortOrder = SUR_SORT_ORDER_ASCENDING
  424.                             End If
  425.                         Else
  426.                             strTempSortOrder = SUR_SORT_ORDER_ASCENDING
  427.                         End If
  428. %>
  429.                         <span class="TableHeadingBold"><a href="javascript:sortList('current_status', '<%=strTempSortOrder%>');">Status</a></span>
  430.                     </th>
  431.                     <th id="Response" width="65" align="center" valign="center">
  432.                         <span class="TableHeadingBold">Response</span>
  433.                     </th>
  434.                 </tr>
  435. <%
  436.                 'Select the list of all emails sent for this message
  437.  
  438.                 strSQL = "SELECT email_address, first_name, last_name, response_date, " & _
  439.                          "esh.response_id As ResponseIDHistory, r.response_id As ResponseIDResponse, " & _
  440.                          "em.survey_id, current_status " & _
  441.                          "FROM (sur_email_message em INNER JOIN (sur_email_address ea INNER JOIN " & _
  442.                          "sur_email_sent_history esh ON ea.email_address_id = esh.email_address_id) " & _
  443.                          "ON em.email_message_id = esh.email_message_id) " & _
  444.                          "LEFT JOIN sur_response r ON esh.response_id = r.response_id " & _
  445.                          "WHERE esh.email_message_id = " & lngEmailMessageID & _
  446.                          " ORDER BY " & strSortColumn & " " & strSortOrder
  447.                 rsEmailsSent.Open ConvertSQL(strSQL), SURVEY_APP_CONNECTION, adOpenForwardOnly, adLockReadOnly, adCmdText
  448.  
  449.                 'Move the recordset to the correct starting position
  450.                 rsEmailsSent.MoveFirst
  451.                 For i = 1 To lngStartNumber - 1
  452.                     If Not rsEmailsSent.EOF Then
  453.                         rsEmailsSent.MoveNext
  454.                     End If
  455.                 Next
  456.  
  457.                 Do While Not rsEmailsSent.EOF And CLng(lngDisplayedCount) < CLng(lngNumberPerPage)
  458.                     lngDisplayedCount = lngDisplayedCount + 1
  459. %>
  460.                     <tr class="<%=strTableRowColor%>">
  461.                         <td align="left" valign="center" height="29">
  462.                             <span class="InlineHelpSpanStyle"><a href="mailto:<%=rsEmailsSent("email_address")%>"><%=rsEmailsSent("email_address")%></a></span>
  463.                         </td>
  464.                         <td>
  465.                             <span class="InlineHelpSpanStyle"><%=rsEmailsSent("first_name")%><br></span>
  466.                         </td>
  467.                         <td>
  468.                             <span class="InlineHelpSpanStyle"><%=rsEmailsSent("last_name")%><br></span>
  469.                         </td>
  470.                         <td>
  471.                             <span class="InlineHelpSpanStyle"><%=CustomDateFormatDisplay(rsEmailsSent("response_date"))%><br></span>
  472.                         </td>
  473.                         <td>
  474.                             <span class="InlineHelpSpanStyle"><%=rsEmailsSent("current_status")%><br></span>
  475.                         </td>
  476.                         <td align="center">
  477. <%
  478.                             'Check to see if there was a response to the email invitation
  479.                             If Len(rsEmailsSent("ResponseIDHistory")) > 0 Or IsNull(rsEmailsSent("ResponseIDHistory")) = False Then
  480.                             
  481.                                 'Only display the link to the response if it was not deleted
  482.                                 If IsNull(rsEmailsSent("ResponseIDResponse")) = True Or Len(rsEmailsSent("ResponseIDResponse")) = 0 Then
  483. %>
  484.                                     <span class="InlineHelpSpanStyle">Deleted</span>
  485. <%
  486.                                 Else
  487. %>
  488.                                     <a href="ResultsIndividual.asp?DisplayHeader=Yes&SurveyID=<%=rsEmailsSent("survey_id")%>&ResponseID=<%=rsEmailsSent("ResponseIDHistory")%>"><img alt="View this response" src="Resources/Icons/Analyze.gif" border="0" onMouseOver="this.style.cursor='hand'"></a>
  489. <%
  490.                                 End If
  491.                             End If
  492. %>
  493.                         </td>
  494.                     </tr>
  495. <%            
  496.                     'Alternate the colors for the rows in the table
  497.                     If strTableRowColor = "TableRowDarkColor" Then
  498.                         strTableRowColor = "TableRowLightColor"
  499.                     Else
  500.                         strTableRowColor = "TableRowDarkColor"
  501.                     End If
  502.  
  503.                     rsEmailsSent.MoveNext
  504.                 Loop
  505. %>                    
  506.             </table>
  507.         </td>
  508.     </tr>
  509.     <tr>
  510.         <td align="left" valign="top" colspan="2">
  511.             <span class="Normal">
  512.                 <label for="cboNumberPerPage">Show </label>
  513.                 <select name="cboNumberPerPage" id="cboNumberPerPage" style="width:55px" onChange="javascript:displayCountChange();">
  514.                     <option <% If lngNumberPerPage = 3 Then Response.Write "selected" End If%> value="3">3</option>
  515.                     <option <% If lngNumberPerPage = 50 Then Response.Write "selected" End If%> value="50">50</option>
  516.                     <option <% If lngNumberPerPage = 100 Then Response.Write "selected" End If%> value="100">100</option>
  517.                 </select> 
  518.                 sent emails per page
  519.             </span>
  520.         </td>
  521.         <td align="right" colspan="2">
  522.             <span class="Normal">
  523. <%
  524.                 If lngPreviousNumber <> -1 Then
  525. %>
  526.                     <a href="javascript:paginate(<%=lngPreviousNumber%>);">Previous</a>
  527. <%
  528.                 End If
  529.                     
  530.                 If lngPreviousNumber <> -1 And lngNextNumber <> -1 Then
  531. %>
  532.                      | 
  533. <%
  534.                 End If
  535.                     
  536.                 If lngNextNumber <> -1 Then
  537. %>
  538.                     <a href="javascript:paginate(<%=lngNextNumber%>);">Next</a>
  539. <%
  540.                 End If
  541. %>
  542.             </span>
  543.         </td>
  544.     </tr>
  545.     <tr>
  546.         <td colspan="4" align="right">
  547.             <br>
  548.             <a href="EmailMessageList.asp?EmailListID=<%=lngEmailListID%>&EmailListName=<%=strEmailListName%>"><img border="0" alt="Back" name="btnBack" src="Resources/Buttons/Back.gif"></a>
  549.         </td>
  550.     </tr>
  551. </table>
  552.  
  553. <!--#Include File="Include/FrameworkBottom_inc.asp"-->
  554.  
  555. </body>
  556.  
  557. <form name="frmSortAndPaginate" method="post" action="EmailMessageDetails.asp">
  558.     <input type="hidden" name="SortColumn" value="<%=strSortColumn%>">
  559.     <input type="hidden" name="SortOrder" value="<%=strSortOrder%>">
  560.     <input type="hidden" name="NumberPerPage" value="<%=lngNumberPerPage%>">
  561.     <input type="hidden" name="StartNumber" value="<%=lngStartNumber%>">
  562.     <input type="hidden" name="EmailMessageID" value="<%=lngEmailMessageID%>">
  563.     <input type="hidden" name="EmailListID" value="<%=lngEmailListID%>">
  564.     <input type="hidden" name="EmailListName" value="<%=strEmailListName%>">
  565. </form>
  566.  
  567. </html>
  568. <%        
  569.     'Ensure that the web server returns the page
  570.     Response.Flush
  571.  
  572.     'Get the count of emails sent for this message
  573.     Function GetEmailsSentCount(lngEmailMessageID)
  574.  
  575.         Dim strSQL
  576.         Dim lngCount
  577.         Dim rsEmailsSentCount
  578.  
  579.         'Initialization    
  580.         Set rsEmailsSentCount = Server.CreateObject("ADODB.Recordset")
  581.  
  582.         'Get the total count of emails sent for this message
  583.         strSQL = "SELECT count(email_address_id) As EmailsSentCount " & _
  584.                  "FROM sur_email_sent_history " & _
  585.                  "WHERE email_message_id = " & lngEmailMessageID
  586.         rsEmailsSentCount.Open ConvertSQL(strSQL), SURVEY_APP_CONNECTION, adOpenForwardOnly, adLockReadOnly, adCmdText
  587.         lngCount = CLng(rsEmailsSentCount("EmailsSentCount"))
  588.         
  589.         'Clean up
  590.         rsEmailsSentCount.Close
  591.         Set rsEmailsSentCount = Nothing
  592.         
  593.         GetEmailsSentCount = lngCount
  594.     End Function
  595. %>
  596.