App_Code.Controls.RecaptchaControl.UpdateLog C# (CSharp) Method

UpdateLog() public method

The update log.
public UpdateLog ( Comment comment ) : void
comment Comment /// The comment. ///
return void
        public void UpdateLog(Comment comment)
        {
            if (!this.RecaptchaLoggingEnabled || this.skipRecaptcha)
            {
                return;
            }

            var log = RecaptchaLogger.ReadLogItems();

            var logItem = new RecaptchaLogItem
                {
                    Response = this.RecaptchaResponseValue,
                    Challenge = this.RecaptchaChallengeValue,
                    CommentId = comment.Id,
                    Enabled = this.RecaptchaEnabled,
                    Necessary = this.RecaptchaNecessary,
                    NumberOfAttempts = this.RecaptchaAttempts,
                    TimeToComment = DateTime.Now.Subtract(this.PageLoadTime).TotalSeconds,
                    TimeToSolveCapcha = DateTime.Now.Subtract(this.RecaptchaRenderTime).TotalSeconds
                };
            log.Add(logItem);

            if (log.Count > this.MaxLogEntries)
            {
                log.RemoveRange(0, log.Count - this.MaxLogEntries);
            }

            RecaptchaLogger.SaveLogItems(log);

            this.RecaptchaAttempts = 0;
            this.PageLoadTime = DateTime.Now;
            Blog.CurrentInstance.Cache.Remove(string.Format("{0}RecaptchaChallengeValue", this.UserUniqueIdentifier));
            Blog.CurrentInstance.Cache.Remove(string.Format("{0}RecaptchaResponseValue", this.UserUniqueIdentifier));
        }