Esempio n. 1
0
    protected void ServerRejectChange(object sender, EventArgs e)
    {
        HttpCookie cookie = Request.Cookies["BrowserDate"];
        try
        {
            HtmlButton thebutton = (HtmlButton)sender;

            Data dat = new Data(DateTime.Parse(cookie.Value.ToString().Replace("%20", " ").Replace("%3A", ":")));

            string theRow = "";
            bool isVenue = false;

            if (thebutton.Attributes["commArg"].ToString().ToLower() == "venue")
                isVenue = true;

            string rowID = "";

            if (isVenue)
            {
                if (thebutton.Attributes["commandargument"].Contains("category"))
                {
                    //THIS PART NOW TAKEN CARE OF BY REJECTCATEGORY METHOD
                    //rowID = thebutton.Attributes["commandargument"].Replace("category", "");
                    //theRow = rowID;

                    //string venueName = dat.GetData("SELECT * FROM Venues V, VenueCategoryRevisions VCR WHERE V.ID=VCR.VenueID AND VCR.ID=" + rowID).Tables[0].Rows[0]["Name"].ToString();

                    //string categoryName = dat.GetData("SELECT * FROM VenueCategoryRevisions VCR, VenueCategories VC " +
                    //    "WHERE VC.CategoryID=VCR.CategoryID AND VCR.ID=" + rowID).Tables[0].Rows[0]["CategoryName"].ToString();
                    //dat.Execute("UPDATE VenueCategoryRevisions SET Approved='False' WHERE ID=" + rowID);

                    //DataSet dsRevision = dat.GetData("SELECT * FROM VenueCategoryRevisions VCR, Users U WHERE U.User_ID=VCR.modifierID AND VCR.ID=" + rowID);

                    //DataSet dsUser = dat.GetData("SELECT * FROM Users U WHERE User_ID=" + dsRevision.Tables[0].Rows[0]["modifierID"].ToString());
                    //string emailBody = "The category suggestion '" + categoryName + "' has been rejected for the venue '" + venueName +
                    //    "' by the venue's author. <br/><br/> " +
                    //    "To view the venue, please visit <a href=\"http://HippoHappenings.com/Venue.aspx?ID=" +
                    //    dsRevision.Tables[0].Rows[0]["VenueID"].ToString() + "\">" + venueName + "</a>";
                    //dat.SendEmail(System.Configuration.ConfigurationManager.AppSettings["emailemail"].ToString(),
                    //System.Configuration.ConfigurationManager.AppSettings["emailName"].ToString(),
                    //dsUser.Tables[0].Rows[0]["Email"].ToString(), emailBody, "One of your changes has been rejected for venue: '" +
                    //venueName + "'");

                    //Literal lab = new Literal();

                    //lab.Text = "<div class=\"AddGreenLink\" style=\"float: right;margin-top: 20px; padding-bottom: 4px;height: 30px;\">You have rejected this change.</div>";
                    ////Remove the 'Accept' button first
                    //thebutton.Page.Controls.RemoveAt(thebutton.Parent.Controls.IndexOf(thebutton) - 1);
                    ////Put the label in place of the 'Reject' button
                    //thebutton.Parent.Controls.AddAt(thebutton.Parent.Controls.IndexOf(thebutton), lab);
                    ////Then remove the 'Reject' button
                    //thebutton.Parent.Controls.Remove(thebutton);
                }
                else
                {

                    string[] delim = { "reject" };
                    string[] tokens = thebutton.Attributes["commandargument"].Split(delim, StringSplitOptions.None);
                    rowID = tokens[0];
                    int columnNumber = int.Parse(tokens[1]);
                    dat.ApproveRejectChange("VenueRevisions", rowID, columnNumber-3, false);

                    theRow = rowID;
                    DataSet dsEventID = dat.GetData("SELECT * FROM VenueRevisions WHERE ID=" + rowID);

                    string eventID = dsEventID.Tables[0].Rows[0]["VenueID"].ToString();

                    string columnName = dsEventID.Tables[0].Columns[columnNumber].ColumnName;

                    string temp = dsEventID.Tables[0].Rows[0][columnName].ToString();

                    Literal lab = new Literal();

                    lab.Text = "<div class=\"Green12LinkNF\" style=\"float: right;margin-top: 20px; padding-bottom: 4px;height: 30px;\">You have rejected this change.</div>";
                    string venueName = dat.GetData("SELECT * FROM Venues V, VenueRevisions VCR WHERE V.ID=VCR.VenueID AND VCR.ID=" +
                        rowID).Tables[0].Rows[0]["Name"].ToString();

                    //string categoryName = dat.GetData("SELECT * FROM VenueRevisions VCR, VenueCategories VC " +
                    //    "WHERE VC.CategoryID=VCR.CategoryID AND VCR.ID=" + rowID).Tables[0].Rows[0]["CategoryName"].ToString();

                    DataSet dsRevision = dat.GetData("SELECT * FROM VenueRevisions VCR, Users U WHERE U.User_ID=VCR.modifierID AND VCR.ID=" +
                        rowID);

                    DataSet dsUser = dat.GetData("SELECT * FROM Users U WHERE User_ID=" + dsRevision.Tables[0].Rows[0]["modifierID"].ToString());
                    string emailBody = "The submitted change for " + columnName + " has been rejected by the author of the venue. <br/><br/> " +
                        "To view these changes, please visit <a href=\"http://HippoHappenings.com/"+dat.MakeNiceName(venueName)+"_" + dsRevision.Tables[0].Rows[0]["VenueID"].ToString() + "_Venue\">" + venueName + "</a>";

                    if (!Request.IsLocal)
                    {
                        dat.SendEmail(System.Configuration.ConfigurationManager.AppSettings["emailemail"].ToString(),
                        System.Configuration.ConfigurationManager.AppSettings["emailName"].ToString(),
                        dsUser.Tables[0].Rows[0]["Email"].ToString(), emailBody, "One of your changes has been rejected for venue: '" +
                        venueName + "'");
                    }

                    Label lab2 = new Label();
                    HtmlButton but2 = new HtmlButton();
                    but2 = (HtmlButton)thebutton.Parent.Controls[thebutton.Parent.Controls.IndexOf(thebutton) - 1];

                    but2.Parent.Controls.AddAt(but2.Parent.Controls.IndexOf(but2), lab2);
                    but2.Parent.Controls.Remove(but2);
                    //Put the label in place of the button
                    thebutton.Parent.Controls.AddAt(thebutton.Parent.Controls.IndexOf(thebutton), lab);
                    //Then remove the button
                    thebutton.Parent.Controls.Remove(thebutton);
                }
            }
            else
            {
                if (thebutton.Attributes["commandargument"].Contains("occurance"))
                {
                    rowID = thebutton.Attributes["commandargument"].Replace("occurance", "");
                    theRow = rowID;

                    dat.Execute("UPDATE EventRevisions_Occurance SET Approved='False' WHERE RevisionID=" + rowID);

                    DataSet dsRevision = dat.GetData("SELECT E.Header AS H1, E.ID AS TID, *  FROM EventRevisions ER, Events E WHERE E.ID=ER.EventID AND ER.ID=" + rowID);

                    DataSet dsUser = dat.GetData("SELECT * FROM Users U WHERE User_ID=" + dsRevision.Tables[0].Rows[0]["modifierID"].ToString());
                    string emailBody = "The revised event re-occurance dates have been rejected by the author of the event. <br/><br/> " +
                        "We appologize for any inconvenience. <br/><br/>To view the event, please visit <a href=\"http://HippoHappenings.com/"+dat.MakeNiceName(dsRevision.Tables[0].Rows[0]["H1"].ToString())+"_" +
                        dsRevision.Tables[0].Rows[0]["TID"].ToString() + "_Event\">" + dsRevision.Tables[0].Rows[0]["H1"].ToString() + "</a>";
                    dat.SendEmail(System.Configuration.ConfigurationManager.AppSettings["emailemail"].ToString(),
                    System.Configuration.ConfigurationManager.AppSettings["emailName"].ToString(),
                    dsUser.Tables[0].Rows[0]["Email"].ToString(), emailBody, "One of your changes has been rejected for event: '" +
                    dsRevision.Tables[0].Rows[0]["H1"].ToString() + "'");

                    Literal lab = new Literal();

                    lab.Text = "<div class=\"Green12LinkNF\" style=\"float: right;margin-top: 20px; padding-bottom: 4px;height: 30px;\">You have rejected this change.</div>";

                    Label lab2 = new Label();
                    HtmlButton but2 = new HtmlButton();
                    but2 = (HtmlButton)thebutton.Parent.Controls[thebutton.Parent.Controls.IndexOf(thebutton) + 1];

                    but2.Parent.Controls.AddAt(but2.Parent.Controls.IndexOf(but2), lab2);
                    but2.Parent.Controls.Remove(but2);
                    //Put the label in place of the button
                    thebutton.Parent.Controls.AddAt(thebutton.Parent.Controls.IndexOf(thebutton), lab);
                    //Then remove the button
                    thebutton.Parent.Controls.Remove(thebutton);
                }
                else
                {

                    string[] delim = { "reject" };
                    string[] tokens = thebutton.Attributes["commandargument"].Split(delim, StringSplitOptions.None);

                    rowID = tokens[0];
                    int columnNumber = int.Parse(tokens[1]);
                    theRow = rowID;
                    DataSet dsEventID = dat.GetData("SELECT * FROM EventRevisions WHERE ID=" + rowID);

                    dat.ApproveRejectChange("EventRevisions", rowID, columnNumber-3, false);

                    string eventID = dsEventID.Tables[0].Rows[0]["EventID"].ToString();

                    string columnName = dsEventID.Tables[0].Columns[columnNumber].ColumnName;

                    string temp = dsEventID.Tables[0].Rows[0][columnName].ToString();

                    if (columnName.ToLower() == "venue")
                    {
                        dat.ApproveRejectChange("EventRevisions", rowID, 3, false);
                        dat.ApproveRejectChange("EventRevisions", rowID, 4, false);
                        dat.ApproveRejectChange("EventRevisions", rowID, 5, false);
                        dat.ApproveRejectChange("EventRevisions", rowID, 6, false);
                        dat.ApproveRejectChange("EventRevisions", rowID, 10, false);
                    }

                    DataSet dsRevision = dat.GetData("SELECT E.Header AS H1, E.ID AS TID, * FROM EventRevisions ER, Events E WHERE E.ID=ER.EventID AND ER.ID=" + rowID);

                    DataSet dsUser = dat.GetData("SELECT * FROM Users U WHERE User_ID=" + dsRevision.Tables[0].Rows[0]["modifierID"].ToString());
                    string emailBody = "The revised event " + columnName + " has been rejected by the author of the event. <br/><br/> " +
                        "We appologize for any inconvenience. To view the event, please visit <a href=\"http://HippoHappenings.com/" +dat.MakeNiceName(dsRevision.Tables[0].Rows[0]["H1"].ToString())+"_"+
                        dsRevision.Tables[0].Rows[0]["TID"].ToString() + "_Event\">" + dsRevision.Tables[0].Rows[0]["H1"].ToString() + "</a>";
                    dat.SendEmail(System.Configuration.ConfigurationManager.AppSettings["emailemail"].ToString(),
                    System.Configuration.ConfigurationManager.AppSettings["emailName"].ToString(),
                    dsUser.Tables[0].Rows[0]["Email"].ToString(), emailBody, "One of your changes has been rejected for event: '" +
                    dsRevision.Tables[0].Rows[0]["H1"].ToString() + "'");

                    Literal lab = new Literal();

                    lab.Text = "<div class=\"Green12LinkNF\" style=\"float: right;margin-top: 20px; padding-bottom: 4px;height: 30px;\">You have rejected this change.</div>";

                    Label lab2 = new Label();
                    HtmlButton but2 = new HtmlButton();
                    but2 = (HtmlButton)thebutton.Parent.Controls[thebutton.Parent.Controls.IndexOf(thebutton) - 1];

                    but2.Parent.Controls.AddAt(but2.Parent.Controls.IndexOf(but2), lab2);
                    but2.Parent.Controls.Remove(but2);
                    //Put the label in place of the button
                    thebutton.Parent.Controls.AddAt(thebutton.Parent.Controls.IndexOf(thebutton), lab);
                    //Then remove the button
                    thebutton.Parent.Controls.Remove(thebutton);
                }

            }
        }
        catch (Exception ex)
        {
            MessagesLabel.Text = ex.ToString();
        }
    }
Esempio n. 2
0
    protected void ServerAcceptChange(object sender, EventArgs e)
    {
        HttpCookie cookie = Request.Cookies["BrowserDate"];
        try
        {
            LinkButton thebutton = (LinkButton)sender;

            Data dat = new Data(DateTime.Parse(cookie.Value.ToString().Replace("%20", " ").Replace("%3A", ":")));
            string theRow = "";
            bool isVenue = false;

            if (thebutton.Attributes["commArg"].ToString().ToLower() == "venue")
                isVenue = true;

            if (isVenue)
            {
                if (thebutton.Attributes["commandargument"].Contains("category"))
                {

                }
                else
                {

                    string[] delim = { "accept" };
                    string[] tokens = thebutton.Attributes["commandargument"].Split(delim, StringSplitOptions.None);

                    string rowID = tokens[0];
                    string columnNumber = tokens[1];
                    theRow = rowID;
                    DataSet dsEventID = dat.GetData("SELECT * FROM VenueRevisions WHERE ID=" + rowID);

                    string eventID = dsEventID.Tables[0].Rows[0]["VenueID"].ToString();

                    string columnName = dsEventID.Tables[0].Columns[int.Parse(columnNumber)].ColumnName;

                    string temp = dsEventID.Tables[0].Rows[0][columnName].ToString();

                    SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["Connection"].ToString());
                    conn.Open();
                    SqlCommand cmd = new SqlCommand("UPDATE Venues SET " + columnName + "=@p1 WHERE ID=@eventID", conn);
                    cmd.Parameters.Add("@p1", SqlDbType.NVarChar).Value = dsEventID.Tables[0].Rows[0][columnName].ToString();
                    cmd.Parameters.Add("@eventID", SqlDbType.Int).Value = eventID;
                    cmd.ExecuteNonQuery();
                    conn.Close();
                    dat.ApproveRejectChange("VenueRevisions", rowID, int.Parse(columnNumber)-3, true);

                    string venueName = dat.GetData("SELECT * FROM Venues V, VenueRevisions VCR WHERE V.ID=VCR.VenueID AND VCR.ID=" + rowID).Tables[0].Rows[0]["Name"].ToString();

                    //string categoryName = dat.GetData("SELECT * FROM VenueRevisions VCR, VenueCategories VC " +
                    //    "WHERE VC.CategoryID=VCR.CategoryID AND VCR.ID=" + rowID).Tables[0].Rows[0]["CategoryName"].ToString();

                    DataSet dsRevision = dat.GetData("SELECT * FROM VenueRevisions VCR, Users U WHERE U.User_ID=VCR.modifierID AND VCR.ID=" + rowID);

                    DataSet dsUser = dat.GetData("SELECT * FROM Users U WHERE User_ID=" + dsRevision.Tables[0].Rows[0]["modifierID"].ToString());
                    string emailBody = "The revised venue " + columnName + " has been apporved by the author of the venue. <br/><br/> " +
                        "To view these changes, please visit <a href=\"http://HippoHappenings.com/"+dat.MakeNiceName(venueName) +"_"+ dsRevision.Tables[0].Rows[0]["VenueID"].ToString() + "_Venue\">" + venueName + "</a>";

                    if (!Request.IsLocal)
                    {
                        dat.SendEmail(System.Configuration.ConfigurationManager.AppSettings["emailemail"].ToString(),
                        System.Configuration.ConfigurationManager.AppSettings["emailName"].ToString(),
                        dsUser.Tables[0].Rows[0]["Email"].ToString(), emailBody, "One of your changes has been approved for venue: '" +
                        venueName + "'");
                    }
                    Literal lab = new Literal();

                    lab.Text = "<div class=\"Green12LinkNF\" style=\"float: right;margin-top: 20px; padding-bottom: 4px;height: 30px;\">You have accepted this change.</div>";

                    Label lab2 = new Label();
                    HtmlButton but2 = new HtmlButton();
                    but2 = (HtmlButton)thebutton.Parent.Controls[thebutton.Parent.Controls.IndexOf(thebutton) + 1];

                    but2.Parent.Controls.AddAt(but2.Parent.Controls.IndexOf(but2), lab2);
                    but2.Parent.Controls.Remove(but2);
                    //Put the label in place of the button
                    thebutton.Parent.Controls.AddAt(thebutton.Parent.Controls.IndexOf(thebutton), lab);
                    //Then remove the button
                    thebutton.Parent.Controls.Remove(thebutton);
                }
            }
            else
            {

                if (thebutton.Attributes["commandargument"].Contains("occurance"))
                {
                    //MessagesLabel.Text = "got here ";
                    string rowID = thebutton.Attributes["commandargument"].Replace("occurance", "");
                    theRow = rowID;
                    //MessagesLabel.Text = rowID;
                    dat.Execute("INSERT INTO Event_Occurance (EventID, DateTimeStart, DateTimeEnd) " +
        "SELECT EventID, DateTimeStart, DateTimeEnd FROM EventRevisions_Occurance WHERE RevisionID=" + rowID);
                    //MessagesLabel.Text = "flew here";
                    dat.Execute("UPDATE EventRevisions_Occurance SET Approved='True' WHERE RevisionID=" + rowID);

                    DataSet dsRevision = dat.GetData("SELECT E.Header AS H1, E.ID AS TID, *  FROM EventRevisions ER, Events E WHERE E.ID=ER.EventID AND ER.ID=" + rowID);

                    DataSet dsUser = dat.GetData("SELECT * FROM Users U WHERE User_ID=" + dsRevision.Tables[0].Rows[0]["modifierID"].ToString());
                    string emailBody = "The revised event re-occurance dates have been apporved by the author of the event. <br/><br/> " +
                        "To view these changes, please visit <a href=\"http://HippoHappenings.com/"+dat.MakeNiceName(dsRevision.Tables[0].Rows[0]["H1"].ToString())+"_" + dsRevision.Tables[0].Rows[0]["TID"].ToString() + "_Event\">" + dsRevision.Tables[0].Rows[0]["H1"].ToString() + "</a>";

                    if (!Request.IsLocal)
                    {
                        dat.SendEmail(System.Configuration.ConfigurationManager.AppSettings["emailemail"].ToString(),
                        System.Configuration.ConfigurationManager.AppSettings["emailName"].ToString(),
                        dsUser.Tables[0].Rows[0]["Email"].ToString(), emailBody, "One of your changes has been approved for event: '" +
                        dsRevision.Tables[0].Rows[0]["H1"].ToString() + "'");

                        //Send email to all users who have this event in their calendar and have their email preference set for event updates

                        emailBody = "<br/><br/>Changes have been made to an event in your calendar: Event '\"" + dsRevision.Tables[0].Rows[0]["H1"].ToString() +
                            "\"'. <br/><br/> To view these changes, please go to this event's <a class=\"NavyLink12\"  href=\"http://hippohappenings.com/" + dat.MakeNiceName(dsRevision.Tables[0].Rows[0]["H1"].ToString()) + "_" + dsRevision.Tables[0].Rows[0]["TID"].ToString() + "_Event\">page</a>. " +
                            "<br/><br/><br/>Have a Hippo Happening Day!<br/><br/> <a class=\"NavyLink12\"  href=\"http://HippoHappenings.com\">Happening Hippo</a>";

                        DataSet dsAllUsers = dat.GetData("SELECT * FROM User_Calendar UC, Users U, UserPreferences UP WHERE U.User_ID=UP.UserID AND UP.EmailPrefs LIKE '%C%' AND U.User_ID=UC.UserID AND UC.EventID=" + dsRevision.Tables[0].Rows[0]["TID"].ToString());

                        DataView dv = new DataView(dsAllUsers.Tables[0], "", "", DataViewRowState.CurrentRows);

                        if (dv.Count > 0)
                        {
                            for (int i = 0; i < dv.Count; i++)
                            {
                                dat.SendEmail(System.Configuration.ConfigurationManager.AppSettings["emailemail"].ToString(),
                                    System.Configuration.ConfigurationManager.AppSettings["emailName"].ToString(),
                                    dv[i]["Email"].ToString(), emailBody,
                                    "Event '" +
                                    dsRevision.Tables[0].Rows[0]["H1"].ToString() + "' has been modified");

                                dat.Execute("INSERT INTO UserMessages (MessageContent, MessageSubject, From_UserID, " +
                                    "To_UserID, Date, [Read], Mode, Live, SentLive) VALUES('" + emailBody.Replace("'", "''") + "', '" + "Event ''" +
                                    dsRevision.Tables[0].Rows[0]["H1"].ToString().Replace("'", "''") + "'' has been modified', "+dat.HIPPOHAPP_USERID.ToString()+", " + dv[i]["UserID"].ToString() + ", GETDATE(), 0, 1, 1, 0)");
                            }
                        }

                    }

                    Literal lab = new Literal();
                    lab.Text = "<div class=\"Green12LinkNF\" style=\"float: right;margin-top: 20px; padding-bottom: 4px;height: 30px;\">You have accepted this change.</div>";

                    Label lab2 = new Label();
                    HtmlButton but2 = new HtmlButton();
                    but2 = (HtmlButton)thebutton.Parent.Controls[thebutton.Parent.Controls.IndexOf(thebutton) + 1];

                    but2.Parent.Controls.AddAt(but2.Parent.Controls.IndexOf(but2), lab2);
                    but2.Parent.Controls.Remove(but2);
                    //Put the label in place of the button
                    thebutton.Parent.Controls.AddAt(thebutton.Parent.Controls.IndexOf(thebutton), lab);
                    //Then remove the button
                    thebutton.Parent.Controls.Remove(thebutton);
                }
                else
                {

                    string[] delim = { "accept" };
                    string[] tokens = thebutton.Attributes["commandargument"].Split(delim, StringSplitOptions.None);

                    string rowID = tokens[0];
                    string columnNumber = tokens[1];
                    theRow = rowID;
                    DataSet dsEventID = dat.GetData("SELECT * FROM EventRevisions WHERE ID=" + rowID);

                    string eventID = dsEventID.Tables[0].Rows[0]["EventID"].ToString();

                    string columnName = dsEventID.Tables[0].Columns[int.Parse(columnNumber)].ColumnName;

                    string temp = dsEventID.Tables[0].Rows[0][columnName].ToString();

                    dat.ApproveRejectChange("EventRevisions", rowID, int.Parse(columnNumber)-3, true);

                    //if user is accepting a venue change, also accept zip, city, state and country
                    if (columnName.ToLower() == "venue")
                    {
                        dat.ApproveRejectChange("EventRevisions", rowID, 3, true);
                        dat.ApproveRejectChange("EventRevisions", rowID, 4, true);
                        dat.ApproveRejectChange("EventRevisions", rowID, 5, true);
                        dat.ApproveRejectChange("EventRevisions", rowID, 6, true);
                        dat.ApproveRejectChange("EventRevisions", rowID, 10, true);
                    }

                    SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["Connection"].ToString());
                    conn.Open();
                    SqlCommand cmd = new SqlCommand("UPDATE Events SET " + columnName + "=@p1 WHERE ID=@eventID", conn);
                    cmd.Parameters.Add("@p1", SqlDbType.NVarChar).Value = dsEventID.Tables[0].Rows[0][columnName].ToString();
                    cmd.Parameters.Add("@eventID", SqlDbType.Int).Value = eventID;
                    cmd.ExecuteNonQuery();
                    conn.Close();

                    DataSet dsRevision = dat.GetData("SELECT E.Header AS H1, E.ID AS TID, * FROM EventRevisions ER, Events E WHERE E.ID=ER.EventID AND ER.ID=" + rowID);

                    DataSet dsUser = dat.GetData("SELECT * FROM Users U WHERE User_ID=" + dsRevision.Tables[0].Rows[0]["modifierID"].ToString());
                    string emailBody = "The revised event " + columnName + " has been apporved by the author of the event. <br/><br/> " +
                        "To view these changes, please visit <a href=\"http://HippoHappenings.com/" + dat.MakeNiceName(dsRevision.Tables[0].Rows[0]["H1"].ToString()) + "_" + dsRevision.Tables[0].Rows[0]["TID"].ToString() + "_Event\">" + dsRevision.Tables[0].Rows[0]["H1"].ToString() + "</a>";

                    if (!Request.IsLocal)
                    {

                        dat.SendEmail(System.Configuration.ConfigurationManager.AppSettings["emailemail"].ToString(),
                        System.Configuration.ConfigurationManager.AppSettings["emailName"].ToString(),
                        dsUser.Tables[0].Rows[0]["Email"].ToString(), emailBody, "One of your changes has been approved for event: '" +
                        dsRevision.Tables[0].Rows[0]["H1"].ToString() + "'");

                        //Send email to all users who have this event in their calendar and have their email preference set for event updates

                        emailBody = "<br/><br/>Changes have been made to an event in your calendar: Event '\"" + dsRevision.Tables[0].Rows[0]["H1"].ToString() +
                            "\"'. <br/><br/> To view these changes, please go to this event's <a class=\"NavyLink12\" href=\"http://hippohappenings.com/" + dat.MakeNiceName(dsRevision.Tables[0].Rows[0]["H1"].ToString()) + "_" + dsRevision.Tables[0].Rows[0]["TID"].ToString() + "_Event\">page</a>. " +
                            "<br/><br/><br/>Have a Hippo Happening Day!<br/><br/> <a class=\"NavyLink12\" href=\"http://HippoHappenings.com\">HippoHappenings</a>";

                        DataSet dsAllUsers = dat.GetData("SELECT * FROM User_Calendar UC, Users U, UserPreferences UP " +
                            "WHERE U.User_ID=UP.UserID  AND U.User_ID=UC.UserID AND UC.EventID=" +
                            dsRevision.Tables[0].Rows[0]["TID"].ToString());

                        DataView dv = new DataView(dsAllUsers.Tables[0], "", "", DataViewRowState.CurrentRows);

                        if (dv.Count > 0)
                        {
                            for (int i = 0; i < dv.Count; i++)
                            {
                                if (dv[i]["EmailPrefs"].ToString().Contains("C"))
                                {
                                    dat.SendEmail(System.Configuration.ConfigurationManager.AppSettings["emailemail"].ToString(),
                                        System.Configuration.ConfigurationManager.AppSettings["emailName"].ToString(),
                                        dv[i]["Email"].ToString(), emailBody,
                                        "Event '" +
                                        dsRevision.Tables[0].Rows[0]["H1"].ToString() + "' has been modified");
                                }

                                dat.Execute("INSERT INTO UserMessages (MessageContent, MessageSubject, From_UserID, " +
                                    "To_UserID, Date, [Read], Mode, Live, SentLive) VALUES('" + emailBody.Replace("'", "''") + "', '" + "Event ''" +
                                    dsRevision.Tables[0].Rows[0]["H1"].ToString().Replace("'", "''") + "'' has been modified', " + dat.HIPPOHAPP_USERID +
                                    ", " + dv[i]["UserID"].ToString() + ", GETDATE(), 0, 1, 1, 0)");
                            }
                        }
                    }
                    Literal lab = new Literal();
                    lab.Text = "<div class=\"Green12LinkNF\" style=\"float: right;margin-top: 20px; padding-bottom: 4px;height: 30px;\">You have accepted this change.</div>";

                    Label lab2 = new Label();
                    HtmlButton but2 = new HtmlButton();
                    but2 = (HtmlButton)thebutton.Parent.Controls[thebutton.Parent.Controls.IndexOf(thebutton) + 1];

                    but2.Parent.Controls.AddAt(but2.Parent.Controls.IndexOf(but2), lab2);
                    but2.Parent.Controls.Remove(but2);
                    //Put the label in place of the button
                    thebutton.Parent.Controls.AddAt(thebutton.Parent.Controls.IndexOf(thebutton), lab);
                    //Then remove the button
                    thebutton.Parent.Controls.Remove(thebutton);
                }

            }
        }
        catch (Exception ex)
        {
            MessagesLabel.Text = ex.ToString();
        }
    }