//Global exep? /// <summary> /// Adds a new post to the database and returns the added post /// </summary> /// <param name="blogPost"></param> /// <returns></returns> public BlogPost PostBlog(BlogPost blogPost) { BlogPost blogToPost = new BlogPost(); blogToPost.title = blogPost.title; blogToPost.description = blogPost.description; blogToPost.body = blogPost.body; TagList tagList = new TagList(); tagList.tagList = blogPost.taglist; if (!_blogManager.ValidateTags(tagList)) { throw new ArgumentOutOfRangeException("One or more of the tags listed do not appear in the database."); } blogToPost.taglist = blogPost.taglist; //CHECK TAG LIST blogToPost.slug = _slugfyHelper.SlugifyTheTitle(blogToPost.title); blogToPost.createdat = _currentTime.CurrentUTCTime(); blogToPost.updatedat = _currentTime.CurrentUTCTime(); if (!_blogManager.CheckSlug(blogToPost.slug)) { blogToPost.slug = _slugfyHelper.GenerateSlugAddon(blogToPost.slug); } BlogPost blogPosted = _blogManager.PostBlogPost(blogToPost); return(blogPosted); }
public string GenerateSlugAddon(string slugToMakeUnique) { string newSlug; do { string substring = Guid.NewGuid().ToString("n").Substring(0, 8); newSlug = slugToMakeUnique + substring; } while (_blogManager.CheckSlug(newSlug) == false); return(newSlug); }