protected virtual void FireBeforeMarkAsHam(MarkAsHamEventArgs e) { _events.FireCancelableEvent(BeforeMarkAsHam, this, e); }
public void MarkAsHam() { var markAsHamEventArgs = new MarkAsHamEventArgs(); FireBeforeMarkAsHam(markAsHamEventArgs); if (markAsHamEventArgs.Cancel) return; var forum = new Forum(ParentId); var topic = GetTopic(Id); var member = new Member(topic.MemberId); var akismetApi = Forum.GetAkismetApi(); var akismetComment = Forum.ConstructAkismetComment(member, "topic", string.Format("{0} - {1}", Title, Body)); akismetApi.SubmitHam(akismetComment); Data.SqlHelper.ExecuteNonQuery("UPDATE forumTopics SET isSpam = 0 WHERE id = @id", Data.SqlHelper.CreateParameter("@id", Id.ToString(CultureInfo.InvariantCulture))); Id = 0; forum.Save(); // Set reputation to at least 50 so their next posts won't be automatically marked as spam int reputation; int.TryParse(member.getProperty("reputationTotal").Value.ToString(), out reputation); if (reputation < 50) member.getProperty("reputationTotal").Value = 50; int.TryParse(member.getProperty("reputationCurrent").Value.ToString(), out reputation); if (reputation < 50) member.getProperty("reputationCurrent").Value = 50; member.Save(); FireAfterMarkAsHam(markAsHamEventArgs); }
protected virtual void FireAfterMarkAsHam(MarkAsHamEventArgs e) { if (AfterMarkAsHam != null) AfterMarkAsHam(this, e); }
public void MarkAsHam() { var e = new MarkAsHamEventArgs(); FireBeforeMarkAsHam(e); if (e.Cancel) return; var topic = Topic.GetTopic(TopicId); var forum = new Forum(topic.ParentId); var member = new Member(MemberId); Data.SqlHelper.ExecuteNonQuery("UPDATE forumComments SET isSpam = 0 WHERE id = " + Id); Id = 0; topic.Save(true); forum.Save(); // Set reputation to at least 50 so their next posts won't be automatically marked as spam int reputation; int.TryParse(member.getProperty("reputationTotal").Value.ToString(), out reputation); if (reputation < 50) member.getProperty("reputationTotal").Value = 50; int.TryParse(member.getProperty("reputationCurrent").Value.ToString(), out reputation); if (reputation < 50) member.getProperty("reputationCurrent").Value = 50; member.getProperty("blocked").Value = false; member.Save(); FireAfterMarkAsHam(e); }