Exemple #1
0
        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));
        }
Exemple #3
0
        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);
        }