PageRenderTime 53ms CodeModel.GetById 18ms RepoModel.GetById 1ms app.codeStats 0ms

/BlogEngine/BlogEngine.NET/admin/Settings/Email.aspx

#
ASP.NET | 136 lines | 127 code | 9 blank | 0 comment | 3 complexity | 81d10cf6ee6a180810b5f4233fe03bec MD5 | raw file
Possible License(s): LGPL-2.1, Apache-2.0, BSD-3-Clause
  1. <%@ Page Title="" Language="C#" MasterPageFile="~/admin/admin.master" AutoEventWireup="true" CodeFile="Email.aspx.cs" Inherits="admin.Settings.Email" %>
  2. <%@ Register src="Menu.ascx" tagname="TabMenu" tagprefix="menu" %>
  3. <asp:Content ID="Content1" ContentPlaceHolderID="cphAdmin" Runat="Server">
  4. <script type="text/javascript">
  5. $(document).ready(function () {
  6. var frm = document.forms.aspnetForm;
  7. $(frm).validate({
  8. onsubmit: false
  9. });
  10. $("#btnSave").click(function (evt) {
  11. if ($(frm).valid())
  12. SaveSettings();
  13. evt.preventDefault();
  14. });
  15. });
  16. function SaveSettings() {
  17. $('.loader').show();
  18. var dto = {
  19. "email": $("[id$='_txtEmail']").val(),
  20. "smtpServer": $("[id$='_txtSmtpServer']").val(),
  21. "smtpServerPort": $("[id$='_txtSmtpServerPort']").val(),
  22. "smtpUserName": $("[id$='_txtSmtpUsername']").val(),
  23. "smtpPassword": $("[id$='_txtSmtpPassword']").val(),
  24. "sendMailOnComment": $("[id$='_cbComments']").attr('checked'),
  25. "enableSsl": $("[id$='_cbEnableSsl']").attr('checked'),
  26. "emailSubjectPrefix": $("[id$='_txtEmailSubjectPrefix']").val()
  27. };
  28. $.ajax({
  29. url: SiteVars.ApplicationRelativeWebRoot + "admin/Settings/Email.aspx/Save",
  30. type: "POST",
  31. dataType: "json",
  32. contentType: "application/json; charset=utf-8",
  33. data: JSON.stringify(dto),
  34. beforeSend: onAjaxBeforeSend,
  35. success: function (result) {
  36. var rt = result.d;
  37. if (rt.Success)
  38. ShowStatus("success", rt.Message);
  39. else
  40. ShowStatus("warning", rt.Message);
  41. }
  42. });
  43. $('.loader').hide();
  44. return false;
  45. }
  46. function TestEmail() {
  47. $('.loader').show();
  48. var dto = {
  49. "email": $("[id$='_txtEmail']").val(),
  50. "smtpServer": $("[id$='_txtSmtpServer']").val(),
  51. "smtpServerPort": $("[id$='_txtSmtpServerPort']").val(),
  52. "smtpUserName": $("[id$='_txtSmtpUsername']").val(),
  53. "smtpPassword": $("[id$='_txtSmtpPassword']").val(),
  54. "sendMailOnComment": $("[id$='_cbComments']").attr('checked'),
  55. "enableSsl": $("[id$='_cbEnableSsl']").attr('checked'),
  56. "emailSubjectPrefix": $("[id$='_txtEmailSubjectPrefix']").val()
  57. };
  58. $.ajax({
  59. url: SiteVars.ApplicationRelativeWebRoot + "admin/Settings/Email.aspx/TestSmtp",
  60. type: "POST",
  61. dataType: "json",
  62. contentType: "application/json; charset=utf-8",
  63. data: JSON.stringify(dto),
  64. beforeSend: onAjaxBeforeSend,
  65. success: function (result) {
  66. var rt = result.d;
  67. if (rt.Success)
  68. ShowStatus("success", rt.Message);
  69. else
  70. ShowStatus("warning", rt.Message);
  71. }
  72. });
  73. $('.loader').hide();
  74. return false;
  75. }
  76. </script>
  77. <div class="content-box-outer">
  78. <div class="content-box-right">
  79. <menu:TabMenu ID="TabMenu" runat="server" />
  80. </div>
  81. <div class="content-box-left">
  82. <h1><%=Resources.labels.settings %></h1>
  83. <ul class="fl leftaligned">
  84. <li>
  85. <label class="lbl" for="<%=txtEmail.ClientID %>"><%=Resources.labels.emailAddress %></label>
  86. <asp:TextBox CssClass="w300 email" runat="server" ID="txtEmail" />
  87. </li>
  88. <li>
  89. <label class="lbl" for="<%=txtSmtpServer.ClientID %>"><%=Resources.labels.smtpServer%></label>
  90. <asp:TextBox runat="server" ID="txtSmtpServer" CssClass="w300" />
  91. </li>
  92. <li>
  93. <label class="lbl" for="<%=txtSmtpServerPort.ClientID %>"><%=Resources.labels.portNumber %></label>
  94. <asp:TextBox runat="server" ID="txtSmtpServerPort" Width="35" CssClass="number" />
  95. <span class="belowHelp"><%=Resources.labels.portNumberDescription %></span>
  96. </li>
  97. <li>
  98. <label class="lbl" for="<%=txtSmtpUsername.ClientID %>"><%=Resources.labels.userName %></label>
  99. <asp:TextBox CssClass="txt" runat="server" ID="txtSmtpUsername" Width="300" />
  100. </li>
  101. <li>
  102. <label class="lbl" for="<%=txtSmtpPassword.ClientID %>"><%=Resources.labels.password %></label>
  103. <asp:TextBox TextMode="Password" runat="server" ID="txtSmtpPassword" Width="300" />
  104. </li>
  105. <li>
  106. <label class="lbl" for="<%=txtEmailSubjectPrefix.ClientID %>"><%=Resources.labels.emailSubjectPrefix %></label>
  107. <asp:TextBox runat="server" ID="txtEmailSubjectPrefix" Width="300" />
  108. </li>
  109. <li>
  110. <label class="lbl"><%=Resources.labels.otherSettings %></label>
  111. <asp:CheckBox runat="Server" ID="cbEnableSsl" />
  112. <label for="<%=cbEnableSsl.ClientID %>"><%=Resources.labels.enableSsl%></label>
  113. </li>
  114. <li>
  115. <span class="filler"></span>
  116. <asp:CheckBox runat="Server" ID="cbComments" />
  117. <label for="<%=cbComments.ClientID %>"><%=Resources.labels.sendCommentEmail %></label>
  118. </li>
  119. </ul>
  120. <div class="action_buttons">
  121. <input type="submit" id="btnSave" class="btn primary" value="<%=Resources.labels.saveSettings %>" />
  122. <input type="submit" class="btn" value="<%=Resources.labels.testEmailSettings %>" onclick="return TestEmail();" />
  123. <asp:Label runat="Server" ID="lbSmtpStatus" />
  124. </div>
  125. </div>
  126. </div>
  127. </asp:Content>