public static void AddCreative(Creative creative, string tags) { var entity = new CreativeNetworkEntities(); if (tags != null) { string[] tagList = tags.Split(new Char[] { ' ', ',' }); foreach (var item in tagList.Distinct()) { if (string.IsNullOrEmpty(item) || item.Length > 50) continue; var tag = new Tag { Name = item, }; tag.Name = tag.Name.TrimEnd().ToLower(); if (entity.Tag.FirstOrDefault(a => a.Name == tag.Name) != null) { tag = entity.Tag.FirstOrDefault(a => a.Name == tag.Name); } else { entity.Tag.Add(tag); } creative.Tag.Add(tag); var ers = entity.GetValidationErrors(); entity.SaveChanges(); } } entity.Creative.Add(creative); var s = entity.GetValidationErrors(); entity.SaveChanges(); }
// add/update/clear search index data public static void AddUpdateLuceneIndex() { using (var context = new CreativeNetworkEntities()) { // init lucene var analyzer = new StandardAnalyzer(Version.LUCENE_30); using (var writer = new IndexWriter(_directory, analyzer, IndexWriter.MaxFieldLength.UNLIMITED)) { // add data to lucene search index (replaces older entries if any) foreach (var creative in context.Creative) { _addToLuceneIndex(creative, writer); foreach (var chapter in creative.Chapter) { _addToLuceneIndex(chapter, writer); } } // close handles analyzer.Close(); writer.Dispose(); } } }
public static void Activate(string email) { var entity = new CreativeNetworkEntities(); var userToChange = entity.User.FirstOrDefault(a => a.Email == email); if (userToChange != null) userToChange.IsBlock = false; entity.SaveChanges(); }
public static void AddChapter(int creativeId) { var entity = new CreativeNetworkEntities(); var creative = entity.Creative.FirstOrDefault(a => a.Id == creativeId); int number; if (creative.Chapter.Select(a => a.Number).Max() == null) { number = 0; } else { number = (int) creative.Chapter.Select(a => a.Number).Max() +1; } var chapter = new Chapter { Text = "", Name = "Chapter " + number.ToString(), Number = number, }; entity.Creative.FirstOrDefault(a => a.Id == creativeId).Chapter.Add(chapter); entity.SaveChanges(); }
public static int GetTotalRates(int rating) { var entity = new CreativeNetworkEntities(); var result = entity.CreativeLikes.Count(r => r.Rating == rating); return result; }
public static void DeleteChapter(int id) { var entity = new CreativeNetworkEntities(); entity.Chapter.Remove(entity.Chapter.FirstOrDefault(a => a.Id == id)); entity.SaveChanges(); }
public static void Rate(User user, Creative creative, int rating) { var entity = new CreativeNetworkEntities(); var creativeLikes = entity.CreativeLikes.FirstOrDefault(a => a.UserId == user.Id && a.CreativeId == creative.Id); if (creativeLikes != null) { if (creativeLikes.Rating == rating) { entity.CreativeLikes.Remove(creativeLikes); entity.SaveChanges(); return; } else { entity.CreativeLikes.Remove(creativeLikes); } } var newRate = new CreativeLikes() { UserId = user.Id, CreativeId = creative.Id, Rating = rating, }; entity.CreativeLikes.Add(newRate); entity.SaveChanges(); }
public static User GetUser(string email, string password) { var entity = new CreativeNetworkEntities(); return entity.User.FirstOrDefault(u => u.Email == email && u.Password == password); }
public static int GetUserRating(int userId) { var entity = new CreativeNetworkEntities(); User user = entity.User.FirstOrDefault(a => a.Id == userId); return user.Creative.SelectMany(creative => creative.CreativeLikes).Sum(like => (int) like.Rating); }
public static Creative GetCreative(int creativeId) { var entity = new CreativeNetworkEntities(); return entity.Creative.FirstOrDefault(creative => creative.Id == creativeId); }
public static Creative[] GetCreatives(User user) { var entity = new CreativeNetworkEntities(); return entity.Creative.Where(a => a.User.Id == user.Id).ToArray(); }
public static User[] GetAllUsers() { var entity = new CreativeNetworkEntities(); return entity.User.ToArray(); }
public static Chapter GetChapter(int chapterId) { var entity = new CreativeNetworkEntities(); return entity.Chapter.FirstOrDefault(creative => creative.Id == chapterId); }
public static Tag[] GetAllTags() { var entity = new CreativeNetworkEntities(); return entity.Tag.ToArray(); }
public static Creative[] GetAllCreatives() { var entity = new CreativeNetworkEntities(); return entity.Creative.ToArray(); }
public static void DeleteCreative(int id) { var entity = new CreativeNetworkEntities(); var creative = entity.Creative.FirstOrDefault(a => a.Id == id); creative.Tag.Clear(); var chapters = creative.Chapter.ToArray(); foreach (var item in chapters) { entity.Chapter.Remove(item); } creative.Chapter.Clear(); var ratings = entity.CreativeLikes.Where(a => a.CreativeId == id).ToArray(); foreach (var item in ratings) { entity.CreativeLikes.Remove(item); } entity.Creative.Remove(creative); entity.SaveChanges(); var tags = creative.Tag.ToArray(); foreach (var item in tags) { if (entity.Tag.FirstOrDefault(a => a.Id == item.Id).Creative.Count == 0) { entity.Tag.Remove(item); } } }
public static int GetTotalRating(int creativeId) { var entity = new CreativeNetworkEntities(); Creative image = entity.Creative.FirstOrDefault(a => a.Id == creativeId); CreativeLikes[] ratings = image.CreativeLikes.Where(a => a.CreativeId == creativeId).ToArray(); return ratings.Sum(item => (int) item.Rating); }
public static Creative[] GetCreatives(Tag tag) { var entity = new CreativeNetworkEntities(); return entity.Creative.Where(a => a.Tag.FirstOrDefault(t => t.Name == tag.Name) != null).ToArray(); }
public static User GetUser(int id) { var entity = new CreativeNetworkEntities(); return entity.User.FirstOrDefault(a => a.Id == id); }
public static int GetRating(int creativeId, int userId) { var entity = new CreativeNetworkEntities(); Creative creative = entity.Creative.FirstOrDefault(a => a.Id == creativeId); CreativeLikes creativeLikes = creative.CreativeLikes.FirstOrDefault(a => a.CreativeId == creativeId && a.UserId == userId); if (creativeLikes == null) { return 0; } else { return (int)creativeLikes.Rating; } }
public static User GetUser(string cookies) { var entity = new CreativeNetworkEntities(); return entity.User.FirstOrDefault(u => u.Cookies == cookies); }
public static Tag GetTag(string tagName) { var entity = new CreativeNetworkEntities(); return entity.Tag.FirstOrDefault(tag => tag.Name.Trim() == tagName.Trim()); }
public static bool MakeAdmin(int userId) { var entity = new CreativeNetworkEntities(); var user = entity.User.FirstOrDefault(a => a.Id == userId); if (user.IsBlock == true) return false; user.RoleId = 2; entity.SaveChanges(); return (user.RoleId == 2); }
public static void AddUser(User user) { var entity = new CreativeNetworkEntities(); entity.User.Add(user); entity.SaveChanges(); }
public static void SaveChapter(int id, string title, string text) { var entity = new CreativeNetworkEntities(); var chapter = entity.Chapter.FirstOrDefault(c => c.Id == id); chapter.Text = text; chapter.Name = title; entity.Chapter.Attach(chapter); entity.Entry(chapter).State = EntityState.Modified; entity.SaveChanges(); }
public static void ChangeNumber(int chapterId, int number) { var entity = new CreativeNetworkEntities(); var chapter = entity.Chapter.FirstOrDefault(c => c.Id == chapterId); chapter.Number = number; entity.Chapter.Attach(chapter); entity.Entry(chapter).State = EntityState.Modified; entity.SaveChanges(); }
public static int GetTagEnterance(string tagName) { var entity = new CreativeNetworkEntities(); var creatives = entity.Tag.FirstOrDefault(a => a.Name.Trim() == tagName.Trim()); return creatives != null ? creatives.Creative.ToArray().Length : 0; }
public static void ChangePassword(int userId, string newPasswordHash) { var entity = new CreativeNetworkEntities(); var user = entity.User.FirstOrDefault(a => a.Id == userId); user.Password = newPasswordHash; entity.SaveChanges(); }
public static Creative[] GetTopCreatives() { var entity = new CreativeNetworkEntities(); var sortedCreatives = from n in entity.Creative.ToArray() orderby (GetCreativeRating(n.Id)) descending select n; return sortedCreatives.ToArray(); }
public static bool Block(int userId) { var entity = new CreativeNetworkEntities(); var user = entity.User.FirstOrDefault(a => a.Id == userId); user.IsBlock = !user.IsBlock; entity.SaveChanges(); return (bool)user.IsBlock; }