public async Task <AkismetResponse> IsSpam(HttpRequest req, Comment comment, FormContents formContents) { var userAgent = req.Headers["User-Agent"]; var blog = new Uri(_settings.AkismetBlogUrl); using (var akismetClient = new AkismetClient(_settings.AkismetApiKey, blog, userAgent)) { var akismetResult = await akismetClient.IsSpam2(new AkismetComment { Blog = blog, CommentAuthor = comment.Name, CommentAuthorEmail = formContents.Fields.Email, CommentContent = comment.Body, CommentType = "comment", // https://akismet.com/development/api/#comment-check Permalink = formContents.Options.Origin, Referrer = req.Headers["Referer"], UserAgent = userAgent, UserIp = req.HttpContext.Connection.RemoteIpAddress.ToString() }); var response = new AkismetResponse { IsSpam = akismetResult.IsSpam, Text = akismetResult.Text, ProTip = akismetResult.ProTip, DebugHelp = akismetResult.DebugHelp }; _log.LogDebug("Akismet result: {0}", response); return(response); } }
public HttpResponseMessage Post(FormContents form) { var attchments = form.Attachments; //LZString.decompressFromUTF16(); return(new HttpResponseMessage(HttpStatusCode.OK)); }
public static Comment Create(FormContents form) { var comment = new Comment { Name = form.Fields.Name, Email = HashEmailForGravatar(form.Fields.Email), Body = form.Fields.Body, ReplyTo = form.Fields.ReplyTo, Slug = form.Options.Slug }; return(comment); }