示例#1
0
        public ActionResult Create(Course course)
        {
            string name = Membership.GetUser().UserName;
            UserProfile user = db.UserProfiles.SingleOrDefault(p => p.UserName == name);
            if (ModelState.IsValid)
            {
                user.Courses.Add(course);
                db.Entry(user).State = EntityState.Modified;

                //db.Courses.Add(course);
                db.SaveChanges();
                return RedirectToAction("Mine");
            }

            return View(course);
        }
示例#2
0
 public ActionResult Edit(Course course)
 {
     if (ModelState.IsValid)
     {
         db.Entry(course).State = EntityState.Modified;
         db.SaveChanges();
         return RedirectToAction("Index");
     }
     return View(course);
 }
示例#3
0
        public void CreateUpdates(Course model, string category)
        {
            string name = Membership.GetUser().UserName;
            myprofile = db.UserProfiles.SingleOrDefault(p => p.UserName == name);
            string CreateMessage = "New Course Created titled '" + model.CourseName + "'";
            int coursenumber = db.Courses.Count() + 1;
            if (category != null)
            {
                if(category.Contains(';'))
                {
                    string[] Tagnames = category.Split(';');
                    CategoryPost post = new CategoryPost
                    {

                        TimeStamp = DateTime.Now,
                        PostMessage = CreateMessage,
                        Link = "/Course/Details/" + coursenumber,
                        Type = 4,
                        Postedby = myprofile.UserProfileId,
                        Category = Tagnames[0],
                    };

                    myprofile.CategoryPosts.Add(post);
                }
            }

            //For own updates
            Update record = new Update
            {
                Time = DateTime.Now,
                message = CreateMessage,
                link = "/Course/Details/" + coursenumber,
                New = true,
                Own = true,
                type = 6,
                owner = myprofile.UserProfileId
            };

            myprofile.Updates.Add(record); //add own update record

            db.Entry(myprofile).State = EntityState.Modified;
            db.SaveChanges();
        }
示例#4
0
        public ActionResult Create(Course course)
        {
            string name = Membership.GetUser().UserName;
            UserProfile user = db.UserProfiles.SingleOrDefault(p => p.UserName == name);
            if (ModelState.IsValid)
            {
                user.Courses.Add(course);
                db.Entry(user).State = EntityState.Modified;

                //db.Courses.Add(course);
                CreateUpdates(course, course.CourseDescription);

                //Adding the Tag
                //To keep track of tags being added
                List<Tag> AddedTags = new List<Tag>();

                if (course.CourseDescription != null && course.CourseDescription != "")
                {
                    string keyword = course.CourseDescription;
                    //If written new tag
                    string[] Tags = keyword.Split(';');
                    foreach (string tagname in Tags)
                    {
                        string Trimtagname = tagname.Trim();
                        Tag Item = db.Tags.FirstOrDefault(p => p.TagName.ToLower() == Trimtagname.ToLower());
                        if (Item != null)
                        {
                            if (AddedTags.Contains(Item) != true && !(Item.Courses.Any(p => p.CourseId== course.CourseId)))
                            {
                                Item.TagLinkedItems += 1;
                                course.Tags.Add(Item);
                                Item.Courses.Add(course);
                                AddedTags.Add(Item);
                            }
                        }
                        else //If (Item == null)
                        {
                            //Create a New Tag
                            Tag NewItem = new Tag();
                            NewItem.TagName = Trimtagname;
                            NewItem.TagLinkedItems = 1;
                            db.Tags.Add(NewItem);
                            course.Tags.Add(NewItem);
                            NewItem.Courses.Add(course);
                            AddedTags.Add(NewItem);
                        }
                    }
                }
                //-----------End of Adding Tags
                db.SaveChanges();
                return RedirectToAction("Mine");
            }

            return View(course);
        }