public ActionResult ModalAction(FeatureParameters parameters) { ValidateFeatureParameters(parameters, FeatureParametersValidator.FeatureIdentifierWithAction); ValidateFeatureParameters(parameters, Enum.GetName(parameters.Action.GetType(), parameters.Action)); return(RedirectToAction(Enum.GetName(parameters.Action.GetType(), parameters.Action), parameters.GetActionSpecificParameters())); }
public bool IsDateContained(FeatureParameters parameters) { int messageId = parameters.MessageId; yaf_Message item = buhonlineDataProvider.ReadMessage(messageId); return(FeatureRegex.Date.IsMatch(item.Message)); }
public bool IsTextHighlighted(FeatureParameters parameters) { int messageId = parameters.MessageId; yaf_Message item = buhonlineDataProvider.ReadMessage(messageId); return(FeatureRegex.HighlightBBTag.IsMatch(item.Message)); }
public async Task <ActionResult> ListFeatures(FeatureParameters parameters) { ValidateFeatureParameters(parameters, FeatureParametersValidator.NoValidation); var filter = new FeatureFilter() { FilterMessage = parameters.FilterMessage, CarLine = parameters.CarLine, ModelYear = parameters.ModelYear, Gateway = parameters.Gateway, Action = FeatureAction.Features }; filter.InitialiseFromJson(parameters); var results = await FeatureViewModel.GetModel(DataContext, filter); var jQueryResult = new JQueryDataTableResultModel(results); foreach (var result in results.Features.CurrentPage) { jQueryResult.aaData.Add(result.ToJQueryDataTableResult()); } return(Json(jQueryResult)); }
public bool IsEdited(FeatureParameters parameters) { int messageId = parameters.MessageId; yaf_Message item = buhonlineDataProvider.ReadMessage(messageId); return(item.Edited != null); }
public int GetUserQuotesCount(FeatureParameters parameters) { int messageId = parameters.MessageId; yaf_Message item = buhonlineDataProvider.ReadMessage(messageId); return(FeatureRegex.QuoteExpression.Matches(item.Message).Count); }
public bool IsSmileContained(FeatureParameters parameters) { int messageId = parameters.MessageId; yaf_Message item = buhonlineDataProvider.ReadMessage(messageId); return(smiles.Any(item.Message.Contains)); }
public int GetDistinctPunctuationsCount(FeatureParameters parameters) { int messageId = parameters.MessageId; yaf_Message item = buhonlineDataProvider.ReadMessage(messageId); return(item.Message.Where(char.IsPunctuation).Distinct().Count()); }
public int GetUpperLettersCount(FeatureParameters parameters) { int messageId = parameters.MessageId; yaf_Message item = buhonlineDataProvider.ReadMessage(messageId); return(item.Message.Count(char.IsUpper)); }
public bool IsFormWordsContained(FeatureParameters parameters) { int messageId = parameters.MessageId; yaf_Message item = buhonlineDataProvider.ReadMessage(messageId); return(IsWordsFromCollectionContained(item.Message, formWords)); }
public int GetNumbersCount(FeatureParameters parameters) { int messageId = parameters.MessageId; yaf_Message item = buhonlineDataProvider.ReadMessage(messageId); return(FeatureRegex.Numbers.Split(item.Message).Length - 1); }
public int GetQuestionMarksFeature(FeatureParameters parameters) { int messageId = parameters.MessageId; yaf_Message item = buhonlineDataProvider.ReadMessage(messageId); return(item.Message.Split('?').Length - 1); }
public int GetPostLengthFeature(FeatureParameters parameters) { int messageId = parameters.MessageId; yaf_Message item = buhonlineDataProvider.ReadMessage(messageId); return(item.Message.Length); }
public int GetPoints(FeatureParameters parameters) { int messageId = parameters.MessageId; yaf_Message item = buhonlineDataProvider.ReadMessage(messageId); return(item.Points); }
public int GetHtmlTagsCount(FeatureParameters parameters) { int messageId = parameters.MessageId; yaf_Message item = buhonlineDataProvider.ReadMessage(messageId); return(FeatureRegex.HtmlTags.Matches(item.Message).Count); }
public int ThreadLength(FeatureParameters parameters) { int messageId = parameters.MessageId; yaf_Message item = buhonlineDataProvider.ReadMessage(messageId); return(buhonlineDataProvider.ReadTopicMessages(item.TopicID).Count()); }
public bool IsHelloContained(FeatureParameters parameters) { HashSet <string> helloWords = Preprocessing.HelloWords; int messageId = parameters.MessageId; yaf_Message item = buhonlineDataProvider.ReadMessage(messageId); return(helloWords.Any(item.Message.ToLower().StartsWith)); }
public bool IsThankwordsContained(FeatureParameters parameters) { int messageId = parameters.MessageId; yaf_Message item = buhonlineDataProvider.ReadMessage(messageId); HashSet <string> thankwords = Preprocessing.ThankWords; return(FeatureRegex.Words.Split(item.Message.ToLower()).Any(thankwords.Contains)); }
public bool IsSameAuthorAsTopicStarter(FeatureParameters parameters) { int messageId = parameters.MessageId; yaf_Message item = buhonlineDataProvider.ReadMessage(messageId); int topicStarterAuthorID = GetTopicStarter(item.TopicID).UserID; return(item.UserID == topicStarterAuthorID); }
public double QuotientPostLengthToAvarageInTopic(FeatureParameters parameters) { int messageId = parameters.MessageId; yaf_Message item = buhonlineDataProvider.ReadMessage(messageId); IEnumerable <yaf_Message> messages = buhonlineDataProvider.ReadTopicMessages(item.TopicID); return(messages.Average(m => m.Message.Length)); }
public double TimeFromTopicStarter(FeatureParameters parameters) { int messageId = parameters.MessageId; yaf_Message item = buhonlineDataProvider.ReadMessage(messageId); yaf_Message ts = buhonlineDataProvider.ReadTopicStarter(item.TopicID); return((item.Posted - ts.Posted).TotalMinutes); }
public static FeatureFilter FromParameters(FeatureParameters parameters) { return(new FeatureFilter() { FeatureId = parameters.FeatureId, Action = parameters.Action }); }
public bool IsFormulaContained(FeatureParameters parameters) { int messageId = parameters.MessageId; yaf_Message item = buhonlineDataProvider.ReadMessage(messageId); string[] parts = item.Message.Split(new[] { ']', '?' }); return(parts.Any(FeatureRegex.Formula.IsMatch)); }
public async Task <ActionResult> ModalContent(FeatureParameters parameters) { ValidateFeatureParameters(parameters, FeatureParametersValidator.Action); var filter = FeatureMappingFilter.FromParameters(parameters); var derivativeView = await GetModelFromParameters(parameters); return(PartialView(GetContentPartialViewName(parameters.Action), derivativeView)); }
public int GetAccentedWordsCount(FeatureParameters parameters) { int messageId = parameters.MessageId; yaf_Message item = buhonlineDataProvider.ReadMessage(messageId); return(GetTaggedWordsCount(item.Message, new List <string> { "b", "s", "color", "colour" })); }
public int GetMessageCitedCount(FeatureParameters parameters) { int messageId = parameters.MessageId; yaf_Message item = buhonlineDataProvider.ReadMessage(messageId); return(Preprocessing.MessageCitedCounts.ContainsKey(item.MessageID) ? Preprocessing.MessageCitedCounts[item.MessageID] : 0); }
public double GetStopWordsToAllWordsCount(FeatureParameters parameters) { int messageId = parameters.MessageId; yaf_Message item = buhonlineDataProvider.ReadMessage(messageId); HashSet <string> stopwords = Preprocessing.StopWords; return((double)FeatureRegex.Words.Split(item.Message.ToLower()).Count(stopwords.Contains) / GetWordsCount(parameters)); }
private void ValidateFeatureParameters(FeatureParameters parameters, string ruleSetName) { var validator = new FeatureParametersValidator(); var result = validator.Validate(parameters, ruleSet: ruleSetName); if (!result.IsValid) { throw new ValidationException(result.Errors); } }
public bool IsTopicStarterCited(FeatureParameters parameters) { int messageId = parameters.MessageId; yaf_Message item = buhonlineDataProvider.ReadMessage(messageId); yaf_Message topicStarter = GetTopicStarter(item.TopicID); return (FeatureRegex.QuoteExpression.Matches(item.Message).Cast <Match>().Any( m => m.Groups[1].Value.Trim().ToLower() == topicStarter.Message.Trim().ToLower())); }
public async Task <ActionResult> FeaturePage(FeatureParameters parameters) { var filter = new FeatureFilter() { PageIndex = PageIndex, PageSize = PageSize }; return(View(await FeatureViewModel.GetModel(DataContext, filter))); }