Steps to follow:
1. Download ajax dll from http://asp.net
2. Put this dll in project bin folder
3. Attaché this dll to project
4. Create a sample master page MasterPage.master and add to feedback.aspx.
5. Create feedback.aspx.cs file
Feedback.aspx
<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true"
CodeFile="Feedback.aspx.cs" Inherits="Feedback" Title="Untitled Page" %>
<%@ Register Assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
Namespace="System.Web.UI" TagPrefix="asp" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<asp:Content ID="Content2" ContentPlaceHolderID="Main" runat="Server">
<asp:ScriptManager id="ScriptManager1" runat="server">
</asp:ScriptManager>
<table cellspacing="0" cellpadding="0" width="100%">
<tr>
<td id="user_assistance">
<h2> Sponsored Ads</h2>
<p>
<uc2:Link200x90 ID="Link200x90_1" runat="server" />
</p>
<h2> Sponsored Ads</h2>
<p>
<uc1:Img160x600 ID="Img160x600_1" runat="server" />
</p>
</td>
<td style="width: 10px">
</td>
<td id="user_main">
<table width="100%" id="wholepage" style="text-align: left">
<tr>
<td>
</td>
<td colspan="2">
<br />
<h3>
Send Feedback</h3>
<br />
Thank you for your valuable feedback.
<br />
Thank you
<br />
</td>
<td>
</td>
</tr>
<tr>
<td style="height: 20; text-align: right" colspan="3">
<hr />
<span style="color: #CF1A05">* Marked fields are mandatory </span>
</td>
</tr>
<tr>
<td style="width: 5">
</td>
<td style="width: 20">
</td>
<td>
<table width="500">
<tr>
<td style="height: 10">
</td>
</tr>
<tr>
<td>
</td>
<td style="width: 50">
<span style="color: red">* </span>Your Name: </td>
<td style="width: 600">
<asp:TextBox ID="txtName" runat="server" MaxLength="50" CssClass="unwatermarked"></asp:TextBox>
<asp:RequiredFieldValidator ID="Requiredfieldvalidator1" runat="server" Enabled="true"
Display="none" ErrorMessage="<b>Required Field Missing</b></br>You must enter Name"
ControlToValidate="txtName" Font-Size="XX-Small"></asp:RequiredFieldValidator>
<cc1:ValidatorCalloutExtender HighlightCssClass="validatorCalloutHighlight" ID="ValidatorCalloutExtender1"
runat="server" TargetControlID="Requiredfieldvalidator1">
</cc1:ValidatorCalloutExtender>
<cc1:TextBoxWatermarkExtender WatermarkText="Your Name " WatermarkCssClass="watermarked"
ID="TextBoxWatermarkExtender4" runat="server" TargetControlID="txtName">
</cc1:TextBoxWatermarkExtender>
</td>
<td>
</td>
</tr>
<tr>
<td style="width: 5">
</td>
<td style="white-space: nowrap">
<span style="color: #ff0000">* </span>Your Email Address: </td>
<td>
<asp:TextBox ID="txtEmail" runat="server" MaxLength="50" CssClass="unwatermarked"></asp:TextBox>
<asp:RequiredFieldValidator HighlightCssClass="validatorCalloutHighlight" ID="vldPassword"
Display="None" runat="server" Enabled="true" ErrorMessage="<b>Required Field Missing</b></br>You must enter</br>Email Address"
ControlToValidate="txtEmail" Font-Size="XX-Small"></asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ID="vldregularemail" runat="server" Font-Size="XX-Small"
ControlToValidate="txtEmail" ErrorMessage="E-Mail To field should be in correct format."
Display="none" ValidationExpression="\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"></asp:RegularExpressionValidator></td>
<cc1:ValidatorCalloutExtender HighlightCssClass="validatorCalloutHighlight" ID="ValidatorCalloutExtender2"
runat="server" TargetControlID="vldPassword">
</cc1:ValidatorCalloutExtender>
<cc1:ValidatorCalloutExtender HighlightCssClass="validatorCalloutHighlight" ID="ValidatorCalloutExtender5"
runat="server" TargetControlID="vldregularemail">
</cc1:ValidatorCalloutExtender>
<cc1:TextBoxWatermarkExtender WatermarkText="Your Email Address " WatermarkCssClass="watermarked"
ID="TextBoxWatermarkExtender3" runat="server" TargetControlID="txtEmail">
</cc1:TextBoxWatermarkExtender>
<td>
</td>
</tr>
<tr>
<td>
</td>
<td>
Contact Number: </td>
<td>
<asp:TextBox ID="txtNumber" runat="server" MaxLength="15" CssClass="unwatermarked"></asp:TextBox>
<cc1:TextBoxWatermarkExtender WatermarkText=" Your Contact Number " WatermarkCssClass="watermarked"
ID="TextBoxWatermarkExtender5" runat="server" TargetControlID="txtNumber">
</cc1:TextBoxWatermarkExtender>
</td>
<td>
</td>
</tr>
<tr>
<td>
</td>
<td>
<span style="color: #ff0000">* </span>Subject: </td>
<td>
<asp:TextBox ID="txtSubject" runat="server" MaxLength="200" CssClass="unwatermarked"></asp:TextBox>
<asp:RequiredFieldValidator Display="None" ID="Subject" ControlToValidate="txtSubject"
runat="server" ErrorMessage="<b>Required Field Missing</b></br>You must enter Subject"></asp:RequiredFieldValidator>
<cc1:ValidatorCalloutExtender HighlightCssClass="validatorCalloutHighlight" ID="ValidatorCalloutExtender3"
runat="server" TargetControlID="Subject">
</cc1:ValidatorCalloutExtender>
<cc1:TextBoxWatermarkExtender WatermarkText="Subject " WatermarkCssClass="watermarked"
ID="TextBoxWatermarkExtender2" runat="server" TargetControlID="txtSubject">
</cc1:TextBoxWatermarkExtender>
</td>
<td>
</td>
</tr>
<tr>
<td style="height: 10">
</td>
</tr>
<tr>
<td>
</td>
<td style="vertical-align: top; white-space: nowrap">
<span style="color: red">* </span>Comments:</td>
<td>
<asp:TextBox ID="txtComments" runat="server" Height="136" Width="400" TextMode="MultiLine"
MaxLength="6000" CssClass="unwatermarked"></asp:TextBox>
<asp:RequiredFieldValidator ID="Requiredfieldvalidator3" runat="server" Enabled="true"
Display="none" ErrorMessage="<b>Required Field Missing</b></br>You must enter Comments"
ControlToValidate="txtComments" Font-Size="XX-Small"></asp:RequiredFieldValidator>
<cc1:ValidatorCalloutExtender HighlightCssClass="validatorCalloutHighlight" ID="ValidatorCalloutExtender4"
runat="server" TargetControlID="Requiredfieldvalidator3">
</cc1:ValidatorCalloutExtender>
<cc1:TextBoxWatermarkExtender WatermarkText="Comments " WatermarkCssClass="watermarked"
ID="TextBoxWatermarkExtender1" runat="server" TargetControlID="txtComments">
</cc1:TextBoxWatermarkExtender>
</td>
<td>
</td>
</tr>
<tr>
<td colspan="4" height="10">
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td >
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Always">
<contenttemplate>
<asp:UpdateProgress id="UpdateProgress1" runat="server" AssociatedUpdatePanelID="UpdatePanel1"><ProgressTemplate>
<asp:Image id="Wait" runat="server" ImageUrl="~/images/ajax-loader.gif" AlternateText="Wait"></asp:Image><br /> <asp:Label id="lblWait" runat="server" ForeColor="#004000" Text="Please wait ..." Font-Bold="True"></asp:Label>
</ProgressTemplate>
</asp:UpdateProgress>
<input type="button" runat="server" value="Submit" id="btnSubmit" onserverclick="btnSubmit_ServerClick" /><br />
<asp:Panel ID="pnlMessage" runat="server" BackColor="#FFFF80" Width="100%">
<asp:Label ID="lblMessage" runat="server" ForeColor="Maroon" Text="asxc"></asp:Label>
</asp:Panel>
</contenttemplate>
</asp:UpdatePanel>
<br />
</td>
<td>
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
<td style="width: 10px">
</td>
<td id="user_right">
</td>
</tr>
</table>
</asp:Content>
Feedback.aspx.cs
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class Feedback : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
pnlMessage.Visible = false;
ScriptManager1.RegisterAsyncPostBackControl(btnSubmit);
}
protected void btnSubmit_ServerClick(object sender, EventArgs e)
{
bool EmailSentBool =
AspNet.abc.xyz.BusinessLogicLayer.Utilities.SendEmailToAdmin(Server.HtmlEncode(txtName.Text), Server.HtmlEncode(txtEmail.Text), Server.HtmlEncode(txtComments.Text), "FeedBack " + Server.HtmlEncode(txtSubject.Text), "", Server.HtmlEncode(txtNumber.Text),"Feedback.aspx");
if (EmailSentBool)
{
pnlMessage.Visible = true;
lblMessage.Text = Constants.EmailSuccessful;
}
else
{
pnlMessage.Visible = true;
lblMessage.Text = Constants.EmailUnSuccessful;
}
}
}
Code to send email
public static bool SendEmail(string senderName, string senderAddress, string comments, string subject, string extrabody, string number, string FromScreen )
{
//change to work email
string SitesenderAddress = Constants.EmailFromAddress;
bool sent = false;
SiteSettings s = SiteSettings.GetSharedSettings();
StringBuilder sb = new StringBuilder();
sb.AppendLine("From Screen:" + FromScreen);
sb.AppendLine("The contact information of the user is below:");
sb.AppendLine();
sb.AppendLine("Name: " + senderName);
sb.AppendLine("Email: " + senderAddress);
sb.AppendLine();
sb.AppendLine("User comments/questions:");
sb.AppendLine(comments);
sb.AppendLine();
sb.AppendLine("Extra information: " + extrabody);
sb.AppendLine();
sb.AppendLine("Mobile Number: " + number);
sb.AppendLine();
sb.AppendLine(s.SiteName);
sb.AppendLine(ClassifiedsHttpApplication.SiteUrl);
string from = String.Format("{0} <{1}>", senderName, SitesenderAddress);
try
{
MailMessage m = new MailMessage(from, s.SiteEmailAddress);
m.Subject = subject;
m.Body = sb.ToString();
SmtpClient client = new SmtpClient();
client.Send(m);
sent = true;
}
catch
{
// Consider customizing the message for the EmailNotSentPanel in the ShowAds page.
sent = false;
}
return sent;
}
0 comments:
Post a Comment