public void GetCommand() { var input = VInput.GetArgs(); if (input.Length == 0) { return; //Don't process 0 args } var commandName = input[0]; var args = ArraysUtility.SubArray(input, 1); //FIND ALIASES var command = CurrentCommands.FirstOrDefault(command => command.Aliases.Any(alias => alias == commandName.ToLower())); if (command != null) { Attempt(command, args); return; } //FIND NAME var commandList = StringsUtility.Match(commandName, CurrentCommands); if (commandList.Count == 0) { new GameError($"No commands starting with \"{commandName}\" found!").Write(); } else if (commandList.Count > 1) { VConsole.WriteLine($"Commands starting with \"{commandName}\":"); new TextList <Command>(commandList).Write(); } else { Attempt(commandList[0], args); } }
public void TryRetrieveInfoFromString() { Assert.True(StringsUtility.TryRetrieveInfoFromString("Skyrim_French.ILSTRINGS", out var source, out var language, out var modName)); Assert.Equal(StringsSource.IL, source); Assert.Equal(Language.French, language); Assert.Equal("Skyrim", modName.ToString()); }
public List <ListArticleViewModel> GetCategoryArticles(int category_id, int page, int page_size, int image_width, int image_height, int description_length = 40) { List <ListArticleViewModel> result = new List <ListArticleViewModel>(); IQueryable <ArticleCategory> category_articles = DAManager.ArticleCategoriesRepository.Get(ac => ac.CategoryId == category_id && ac.Article.IsPublished == true && DbFunctions.CreateDateTime(ac.Article.PublishDate.Year, ac.Article.PublishDate.Month, ac.Article.PublishDate.Day, ac.Article.PublishDate.Hour, ac.Article.PublishDate.Minute, ac.Article.PublishDate.Second) <= DateTime.Now, a => a.OrderByDescending(ar => ar.Article.PublishDate), "Article.ArticleImages.Image,Article.Likes,Article.Comments").Skip(page * page_size).Take(page_size); foreach (ArticleCategory AC in category_articles.ToList()) { ListArticleViewModel article = new ListArticleViewModel() { CommentsCount = AC.Article.Comments.Count(), LikesCount = AC.Article.Likes.Count(), Title = AC.Article.Title, URL = AC.Article.URL }; article.Description = StringsUtility.StripHTML(AC.Article.Description); if (article.Description.Length > description_length) { article.Description = article.Description.Substring(0, description_length); } if (AC.Article.ArticleImages.Count() > 0) { article.ImageURL = ImageService.GenerateImageFullPath(AC.Article.ArticleImages.First().Image.URL, image_width.ToString(), image_height.ToString()); } result.Add(article); } return(result); }
public List <ListArticleViewModel> GetSearchResult(string search_key, int page, int page_size, int image_width, int image_height, int description_length = 40) { //clear search query search_key = ClearSearchQuery(search_key); List <ListArticleViewModel> result = new List <ListArticleViewModel>(); //IQueryable<Article> category_articles = DAManager.ArticlesRepository.Get(a => a.IsPublished == true && EntityFunctions.CreateDateTime(a.PublishDate.Year, a.PublishDate.Month, a.PublishDate.Day, a.PublishDate.Hour, a.PublishDate.Minute, a.PublishDate.Second) <= DateTime.Now && (a.Title.Contains(search_key)), a => a.OrderByDescending(ar => ar.PublishDate), "ArticleImages.Image,Likes,Comments").Skip((page-1) * page_size).Take(page_size); List <SearchArticles_Result> category_articles = DAManager.ArticlesRepository.SearchArticles(search_key, page, page_size); foreach (SearchArticles_Result AC in category_articles) { ListArticleViewModel article = new ListArticleViewModel() { Title = AC.Title, URL = AC.URL }; article.Description = StringsUtility.StripHTML(AC.Description); if (article.Description.Length > description_length) { article.Description = article.Description.Substring(0, description_length); } if (AC.ImageURL != "") { article.ImageURL = ImageService.GenerateImageFullPath(AC.ImageURL, image_width.ToString(), image_height.ToString()); } result.Add(article); } return(result); }
public bool Subscribe(int?user_id, string email, int campagin_id) { if (!StringsUtility.IsValidEmail(email)) { return(false); } Subscription old = DAManager.SubscriptionsRepository.Get(s => s.Email == email && s.CampaignId == campagin_id).FirstOrDefault(); if (old != null) { old.Active = true; } else { Subscription new_subscription = new Subscription() { Active = true, CampaignId = campagin_id, UserId = user_id == -1?null:user_id, Email = email }; new_subscription.UnsubscripeToken = RandomString(); DAManager.SubscriptionsRepository.Insert(new_subscription); } try { DAManager.Save(); } catch (Exception ex) { logService.WriteError(ex.Message, ex.Message, ex.StackTrace, ex.Source); return(false); } return(true); }
public JsonResult _IsValidPassword(string password) { if (StringsUtility.IsValidPassword(password)) { return(Json(new { isvalid = true })); } else { return(Json(new { isvalid = false })); } }
public CategoryViewModel GetArticlesTag(string tag, int page, int page_size, int image_width, int image_height, int description_length = 40) { tag = tag.Replace("-", "_"); Tag db_tag = DAManager.TagsRepository.Get(t => t.TagName == tag).FirstOrDefault(); if (db_tag == null) { return(null); } CategoryViewModel result_viewmodel = new CategoryViewModel() { Name = db_tag.FrontTitle, MetaDescription = db_tag.MetaDescription, MetaTitle = db_tag.MetaTitle }; List <ListArticleViewModel> result = new List <ListArticleViewModel>(); IQueryable <ArticleTag> tag_articles = DAManager.ArticleTagsRepository.Get(at => at.Tag == tag && at.Article.IsPublished == true && DbFunctions.CreateDateTime(at.Article.PublishDate.Year, at.Article.PublishDate.Month, at.Article.PublishDate.Day, at.Article.PublishDate.Hour, at.Article.PublishDate.Minute, at.Article.PublishDate.Second) <= DateTime.Now, a => a.OrderByDescending(ar => ar.Article.PublishDate), "Article.ArticleImages.Image,Article.Likes,Article.Comments").Skip((page - 1) * page_size).Take(page_size); foreach (ArticleTag AC in tag_articles.ToList()) { ListArticleViewModel article = new ListArticleViewModel() { CommentsCount = AC.Article.Comments.Count(), LikesCount = AC.Article.Likes.Count(), Title = AC.Article.Title, URL = AC.Article.URL }; article.Description = StringsUtility.StripHTML(AC.Article.Description); if (article.Description.Length > description_length) { article.Description = article.Description.Substring(0, description_length); } if (AC.Article.ArticleImages.Count() > 0) { article.ImageURL = ImageService.GenerateImageFullPath(AC.Article.ArticleImages.First().Image.URL, image_width.ToString(), image_height.ToString()); } result.Add(article); } result_viewmodel.Articles = result; int total_articles = DAManager.ArticleTagsRepository.Get(at => at.Tag == tag && at.Article.IsPublished == true && DbFunctions.CreateDateTime(at.Article.PublishDate.Year, at.Article.PublishDate.Month, at.Article.PublishDate.Day, at.Article.PublishDate.Hour, at.Article.PublishDate.Minute, at.Article.PublishDate.Second) <= DateTime.Now).Count(); //Set pagination properties result_viewmodel.PageNumber = page; result_viewmodel.PageSize = page_size; result_viewmodel.TotalItems = total_articles; return(result_viewmodel); }
public void TryRetrieveInfoFromString_Full_Fail() { Assert.False(StringsUtility.TryRetrieveInfoFromString( StringsLanguageFormat.FullName, "Skyrim_FrenchILSTRINGS", out var _, out var _, out var _)); Assert.False(StringsUtility.TryRetrieveInfoFromString( StringsLanguageFormat.FullName, "SkyrimFrench.ILSTRINGS", out var _, out var _, out var _)); Assert.False(StringsUtility.TryRetrieveInfoFromString( StringsLanguageFormat.FullName, "Skyrim_fr.ILSTRINGS", out var _, out var _, out var _)); }
public JsonResult _IsAvailableEmail(string email) { if (StringsUtility.IsValidEmail(email)) { if (servicesManager.AccountService.IsEmailExist(email) > 0) { return(Json(new { isvalid = true, isavailable = false })); } else { return(Json(new { isvalid = true, isavailable = true })); } } else { return(Json(new { isvalid = false })); } }
public List <ListArticleViewModel> GetArticlesPerFeatureCategories(int count, List <ListArticleViewModel> except, int image_width, int image_height, int description_size = 100) { List <ListArticleViewModel> final_result = new List <ListArticleViewModel>(); List <string> except_list = except.Select(a => a.URL).ToList(); List <Category> online_categories = DAManager.CategoriesRepository.Get(c => c.IsPublished == true && c.FeatureOrder != null).ToList(); IQueryable <ArticleCategory> AC = null; foreach (Category c in online_categories) { if (AC == null) { AC = DAManager.ArticleCategoriesRepository.Get(a => !except_list.Contains(a.Article.URL) && a.Article.IsPublished == true && DbFunctions.CreateDateTime(a.Article.PublishDate.Year, a.Article.PublishDate.Month, a.Article.PublishDate.Day, a.Article.PublishDate.Hour, a.Article.PublishDate.Minute, a.Article.PublishDate.Second) <= DateTime.Now && a.CategoryId == c.CategoryId, a => a.OrderByDescending(ar => ar.Article.PublishDate), "Article,Article.ArticleImages.Image").Take(count).AsQueryable(); } else { AC = AC.Union(DAManager.ArticleCategoriesRepository.Get(a => !except_list.Contains(a.Article.URL) && a.Article.IsPublished == true && DbFunctions.CreateDateTime(a.Article.PublishDate.Year, a.Article.PublishDate.Month, a.Article.PublishDate.Day, a.Article.PublishDate.Hour, a.Article.PublishDate.Minute, a.Article.PublishDate.Second) <= DateTime.Now && a.CategoryId == c.CategoryId, a => a.OrderByDescending(ar => ar.Article.PublishDate), "Article,Article.ArticleImages.Image").Take(count).AsQueryable()); } } foreach (ArticleCategory article_c in AC.ToList()) { ListArticleViewModel item = new ListArticleViewModel() { CategoryId = article_c.CategoryId, URL = article_c.Article.URL, Title = article_c.Article.Title, PublishDate = article_c.Article.PublishDate }; if (article_c.Article.ArticleImages.Count() > 0) { item.ImageURL = article_c.Article.ArticleImages.First().Image.URL; } item.Description = StringsUtility.StripHTML(article_c.Article.Description); if (item.Description.Length > description_size) { item.Description = item.Description.Substring(0, description_size); } final_result.Add(item); } return(FormatImageURL(final_result.OrderByDescending(a => a.PublishDate).ToList(), image_width, image_height)); }
public void TryRetrieveInfoFromString_Iso_Fail() { Assert.False(StringsUtility.TryRetrieveInfoFromString( StringsLanguageFormat.Iso, "Skyrim_frILSTRINGS", out var _, out var _, out var _)); Assert.False(StringsUtility.TryRetrieveInfoFromString( StringsLanguageFormat.Iso, "Skyrimfr.ILSTRINGS", out var _, out var _, out var _)); Assert.False(StringsUtility.TryRetrieveInfoFromString( StringsLanguageFormat.Iso, "Skyrim_French.ILSTRINGS", out var _, out var _, out var _)); Assert.False(StringsUtility.TryRetrieveInfoFromString( StringsLanguageFormat.Iso, "Skyrim_zz.ILSTRINGS", out var _, out var _, out var _)); }
public override void Execute(Game.Game game) { var suffix = SuffixTag.Used ? SuffixArgument.Contents : null; var contains = ContainsTag.Used ? ContainsArgument.Contents : null; var list = StringsUtility.Match(NameArgument.IsFilled ? NameArgument.Contents : "", List(game), suffix, contains); if (list.Count == 0) { VConsole.WriteLine($"No {TypeName} found!"); } else if (list.Count > 1) { var format = new TextListFormat <T> { Func = item => item.Name, IsNumbered = NumberedTag.Used, IsGrouped = !SeparatedTag.Used }; new TextList <T>(list, format).Write(); } else { Describe(list[0]); } }
public void TryRetrieveInfoFromString_Fail() { Assert.False(StringsUtility.TryRetrieveInfoFromString("Skyrim_FrenchILSTRINGS", out var _, out var _, out var _)); Assert.False(StringsUtility.TryRetrieveInfoFromString("SkyrimFrench.ILSTRINGS", out var _, out var _, out var _)); }
public override string ToString() { var list = this.Select(pair => $"x{pair.Value} {pair.Key}").ToList(); return(StringsUtility.Bracket(StringsUtility.InsertCommas(list))); }