//
// DotNetNuke - http:'www.dotnetnuke.com
// Copyright (c) 2002-2007
// by DotNetNuke Corporation
//
// Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
// documentation files (the "Software"), to deal in the Software without restriction, including without limitation
// the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and
// to permit persons to whom the Software is furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in all copies or substantial portions
// of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
// TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
// THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
// CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
//
using System;
using DotNetNuke;
using DotNetNuke.Common;
using DotNetNuke.Security.Roles;
using System.Collections.Generic;
using System.Web.Mail;
using System.Web.UI.WebControls;
using System.Collections;
namespace DotNetNuke.Modules
{
public partial class AjaxEmailC : Entities.Modules.PortalModuleBase
{
protected void Page_Load(object sender, EventArgs e)
{
if (DotNetNuke.Framework.AJAX.IsInstalled())
{
DotNetNuke.Framework.AJAX.RegisterScriptManager();
DotNetNuke.Framework.AJAX.WrapUpdatePanelControl(pnlEmail, true);
DotNetNuke.Framework.AJAX.RegisterPostBackControl(btnPostBack);
}
if (UserId != -1)
{
txtFrom.Text = UserInfo.Email;
}
else
{
lblEmailSent.Visible = true;
lblEmailSent.Text = "You must be logged in to email";
btnSendEmail.Visible = false;
}
}
protected void btnSendEmail_Click(object sender, EventArgs e)
{
//Sleep so that you can see the progress indicator - remove when in production
System.Threading.Thread.Sleep(1000);
if ((txtSubject.Text.Trim() != "")
& (txtMessage.Text.Trim() != ""))
{
int intGridViewRow;
GridViewRowCollection GridViewRowCollection = (GridViewRowCollection)AJAXUsers1.GridViewRows;
for (intGridViewRow = 0; (intGridViewRow <= (GridViewRowCollection.Count - 1)); intGridViewRow++)
{
GridViewRow GridViewRow = (GridViewRow)GridViewRowCollection[intGridViewRow];
Label LabelEmail = (Label)GridViewRow.FindControl("lblEmail2");
DotNetNuke.Services.Mail.Mail.SendMail(txtFrom.Text, LabelEmail.Text, "", txtSubject.Text, txtMessage.Text, "", "HTML", "", "", "", "");
}
lblEmailSent.Text = "Email Sent";
}
else
{
lblEmailSent.Text = "You must have recipients, subject, and message";
}
}
}
}