public IActionResult Leave(int HobbyID)
 {
     if (HttpContext.Session.GetInt32("UserID") == null)
     {
         return(RedirectToAction("Index"));
     }
     else
     {
         WrapperModel ViewModel = new WrapperModel();
         ViewModel.newUser = dbContext.Users.FirstOrDefault(u => u.UserID == HttpContext.Session.GetInt32("UserID"));
         Hobby joinHobby = dbContext.Hobbies
                           .Include(l => l.Enthusiast)
                           .ThenInclude(l => l.User)
                           .SingleOrDefault(d => d.HobbyID == HobbyID);
         Enthusiast WantsToJoin = dbContext.Enthusiasts.FirstOrDefault(d => d.UserID == ViewModel.newUser.UserID && d.HobbyID == HobbyID);
         if (WantsToJoin != null)
         {
             dbContext.Remove(WantsToJoin);
             dbContext.SaveChanges();
             return(RedirectToAction("Dashboard"));
         }
         else
         {
             return(RedirectToAction("Dashboard"));
         }
     }
 }
Beispiel #2
0
        public IActionResult AddHobby(Enthusiast newEnthusiast, int HobbyId)
        {
            Hobby selectedHobby = db.Hobbies
                                  .Include(hobby => hobby.Enthusiasts)
                                  .ThenInclude(peeps => peeps.User)
                                  .FirstOrDefault(hobby => hobby.HobbyId == HobbyId);

            if (ModelState.IsValid == false)
            {
                return(View("Details", selectedHobby));
            }

            bool alreadyAdded = db.Enthusiasts.Any(Enthusiast => Enthusiast.HobbyId == selectedHobby.HobbyId && Enthusiast.UserId == uid);

            if (alreadyAdded)
            {
                ModelState.AddModelError("Body", "Already Enthused");
                return(View("Details", selectedHobby));
            }

            newEnthusiast.UserId = (int)uid;
            db.Enthusiasts.Add(newEnthusiast);
            db.SaveChanges();
            return(RedirectToAction("Details", new { HobbyId = newEnthusiast.HobbyId }));
        }
        public ActionResult DeleteConfirmed(int id)
        {
            Enthusiast enthusiast = db.Enthusiasts.Find(id);

            db.Enthusiasts.Remove(enthusiast);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
        public IActionResult Leave(int hobbyId, int userId)
        {
            Enthusiast remove = dbContext.Enthusiasts.FirstOrDefault(t => t.UserId == userId && t.HobbyId == hobbyId);

            dbContext.Enthusiasts.Remove(remove);
            dbContext.SaveChanges();
            return(RedirectToAction("Home"));
        }
Beispiel #5
0
        // public IActionResult AddHobby(int HobbyID) {
        public IActionResult AddHobby(Hobby collection)
        {
            // Enthusiast addhobby=new Enthusiast(HobbyID, this.LoggedInUserID);
            Enthusiast addhobby = new Enthusiast(collection.HobbyID, this.LoggedInUserID, collection.Proficiency);

            dbContext.Enthusiasts.Add(addhobby);
            dbContext.SaveChanges();

            return(RedirectToAction("Hobbies"));
        }
        public IActionResult JoinHobby(int hobbyId, int userId)
        {
            Enthusiast join = new Enthusiast();

            join.UserId  = userId;
            join.HobbyId = hobbyId;
            dbContext.Enthusiasts.Add(join);
            dbContext.SaveChanges();
            return(Redirect($"/{hobbyId}"));
        }
 public ActionResult Edit([Bind(Include = "EnthusiastID,Username,Address,City,State,Zipcode")] Enthusiast enthusiast)
 {
     if (ModelState.IsValid)
     {
         db.Entry(enthusiast).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(enthusiast));
 }
        public ActionResult Create([Bind(Include = "EnthusiastID,Username,Address,City,State,Zipcode")] Enthusiast enthusiast)
        {
            if (ModelState.IsValid)
            {
                enthusiast.ApplicationId = User.Identity.GetUserId();
                db.Enthusiasts.Add(enthusiast);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(enthusiast));
        }
Beispiel #9
0
        public IActionResult AddToHobbies(int HobbyId)
        {
            var current_user = (int)HttpContext.Session.GetInt32("UserId");

            Enthusiast newEnthusiast = new Enthusiast(HobbyId, current_user);

            //newEnthusiast.User.Proficiency =

            dbContext.Enthusiasts.Add(newEnthusiast);
            dbContext.SaveChanges();

            return(RedirectToAction("Dashboard"));
        }
        // GET: Enthusiasts/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Enthusiast enthusiast = db.Enthusiasts.Find(id);

            if (enthusiast == null)
            {
                return(HttpNotFound());
            }
            return(View(enthusiast));
        }
Beispiel #11
0
        public IActionResult AddToHobbiesLevel(int HobbyId)
        {
            var current_user = (int)HttpContext.Session.GetInt32("UserId");

            Enthusiast newEnthusiast = new Enthusiast(HobbyId, current_user);

            //This is where the logic would go to add a users's proficiency
            //newEnthusiast.User.Proficiency = //result of selection

            dbContext.Enthusiasts.Add(newEnthusiast);
            dbContext.SaveChanges();

            return(RedirectToAction("Dashboard"));
        }
Beispiel #12
0
        public IActionResult RemoveFromHobbies(int HobbyId)
        {
            //Grab list of Enthusiasts for specific hobby
            var hobby_enthusiasts = dbContext.Enthusiasts.Where(enth => enth.HobbyId == HobbyId).ToList();

            //Grab current logged in user
            var current_user = (int)HttpContext.Session.GetInt32("UserId");

            //Get Enthusiast to remove
            Enthusiast leaving_enthusiast = hobby_enthusiasts.FirstOrDefault(leaving => leaving.UserId == current_user);

            dbContext.Enthusiasts.Remove(leaving_enthusiast);
            dbContext.SaveChanges();

            return(RedirectToAction("Dashboard"));
        }
Beispiel #13
0
        public IActionResult AddHobby(int id)
        {
            //Retrieve an the specific hobby you want to become an Enthusiast of
            //Create an Instance of Enthusiast
            Enthusiast newEnthusiast = new Enthusiast
            {
                HobbyId = id,
                UserId  = (int)HttpContext.Session.GetInt32("UserID")
            };

            //Add user to as Enthusiast
            DbContext.Add(newEnthusiast);
            //Save instance of Enthusiast
            DbContext.SaveChanges();
            return(RedirectToAction("Dashboard"));
        }
Beispiel #14
0
        public IActionResult AddToMyHobbies(int HobbyId)
        {
            Enthusiast AlreadyAdded = context.Enthusiasts.FirstOrDefault(e => e.HobbyId == HobbyId && e.UserId == (int)HttpContext.Session.GetInt32("UserId"));

            if (AlreadyAdded != null)
            {
                ViewBag.Message = "You Already Added this hobby";

                Hobby hobbyBefore = context.Hobbies.Where(h => h.HobbyId == HobbyId).Include(h => h.Users).ThenInclude(h => h.User).FirstOrDefault();

                return(View("HobbyDetail", hobbyBefore));
            }
            context.Enthusiasts.Add(new Enthusiast()
            {
                UserId  = (int)HttpContext.Session.GetInt32("UserId"),
                HobbyId = HobbyId
            });
            context.SaveChanges();
            Hobby hobbyAfter = context.Hobbies.Where(h => h.HobbyId == HobbyId).Include(h => h.Users).ThenInclude(h => h.User).FirstOrDefault();

            return(View("HobbyDetail", hobbyAfter));
        }
Beispiel #15
0
        public IActionResult JoinHobby(int userid, int hobbyid, string proficiency)
        {
            var thisuser = dbContext.Users.FirstOrDefault(u => u.id == HttpContext.Session.GetInt32("userid"));

            ViewBag.thisuser = thisuser;
            Hobby thishobby = dbContext.Hobbies.Include(u => u.Hobbylist).ThenInclude(u => u.User).FirstOrDefault(u => u.id == hobbyid);

            ViewBag.thishobby = thishobby;
            if (thishobby.Hobbylist.Any(u => u.userid == thisuser.id))
            {
                ModelState.AddModelError("name", "You are already in this Hobby!");
                return(View("HobbyDetail", thishobby));
            }
            Enthusiast newone = new Enthusiast();

            newone.userid      = userid;
            newone.hobbyid     = hobbyid;
            newone.proficiency = proficiency;
            dbContext.Enthusiasts.Add(newone);
            dbContext.SaveChanges();
            return(Redirect($"Hobby/{hobbyid}"));
        }
Beispiel #16
0
        public IActionResult Join(int hobID)
        {
            var check_hob = dbContext.Enthusiasts.Where(e => e.HobbyId == hobID);
            var userID    = (int)HttpContext.Session.GetInt32("UserId");

            if (check_hob != null)
            {
                foreach (var i in check_hob)
                {
                    if (i.HobbyId == hobID && i.UserId == userID)
                    {
                        return(RedirectToAction("ShowInfo", new { HobID = hobID }));
                    }
                }
            }

            Enthusiast uhob = new Enthusiast();

            uhob.UserId  = (int)HttpContext.Session.GetInt32("UserId");
            uhob.HobbyId = hobID;
            dbContext.Enthusiasts.Add(uhob);
            dbContext.SaveChanges();
            return(RedirectToAction("Dashboard"));
        }
Beispiel #17
0
        #pragma warning disable 1998
        public async override global::System.Threading.Tasks.Task ExecuteAsync()
        {
            BeginContext(14, 21, true);
            WriteLiteral("<div>\r\n    <h1>\r\n    ");
            EndContext();
            BeginContext(36, 10, false);
#line 4 "C:\Users\reeve\Documents\bootcamp\csharp\BeltExam\BeltExam\Views\BeltExam\Details.cshtml"
            Write(Model.Name);

#line default
#line hidden
            EndContext();
            BeginContext(46, 33, true);
            WriteLiteral("\r\n    </h1>\r\n    <p>Description: ");
            EndContext();
            BeginContext(80, 17, false);
#line 6 "C:\Users\reeve\Documents\bootcamp\csharp\BeltExam\BeltExam\Views\BeltExam\Details.cshtml"
            Write(Model.Description);

#line default
#line hidden
            EndContext();
            BeginContext(97, 23, true);
            WriteLiteral("</p>       \r\n    </p>\r\n");
            EndContext();
            BeginContext(223, 64, true);
            WriteLiteral("</div>\r\n<div class=\"row\">\r\n    <div class=\"col-6\">\r\n        <h4>");
            EndContext();
            BeginContext(288, 10, false);
#line 12 "C:\Users\reeve\Documents\bootcamp\csharp\BeltExam\BeltExam\Views\BeltExam\Details.cshtml"
            Write(Model.Name);

#line default
#line hidden
            EndContext();
            BeginContext(298, 146, true);
            WriteLiteral(" Enthusiasts</h4>\r\n        <table style=\"width:100%\">\r\n        <tr>\r\n            <th>Name</th>\r\n            <th>Proficiency</th>\r\n        </tr> \r\n");
            EndContext();
#line 18 "C:\Users\reeve\Documents\bootcamp\csharp\BeltExam\BeltExam\Views\BeltExam\Details.cshtml"
            foreach (Enthusiast enthusiast in Model.Enthusiasts)
            {
#line default
#line hidden
                BeginContext(518, 38, true);
                WriteLiteral("            <tr>\r\n                <td>");
                EndContext();
                BeginContext(557, 25, false);
#line 21 "C:\Users\reeve\Documents\bootcamp\csharp\BeltExam\BeltExam\Views\BeltExam\Details.cshtml"
                Write(enthusiast.User.FirstName);

#line default
#line hidden
                EndContext();
                BeginContext(582, 27, true);
                WriteLiteral("</td>\r\n                <td>");
                EndContext();
                BeginContext(610, 22, false);
#line 22 "C:\Users\reeve\Documents\bootcamp\csharp\BeltExam\BeltExam\Views\BeltExam\Details.cshtml"
                Write(enthusiast.Proficiency);

#line default
#line hidden
                EndContext();
                BeginContext(632, 26, true);
                WriteLiteral("</td>\r\n            </tr>\r\n");
                EndContext();
#line 24 "C:\Users\reeve\Documents\bootcamp\csharp\BeltExam\BeltExam\Views\BeltExam\Details.cshtml"
            }

#line default
#line hidden
            BeginContext(669, 95, true);
            WriteLiteral("        </table>\r\n    </div>\r\n    <div class=\"col-6\">\r\n        <h4>Become an Enthusiast!</h4>\r\n");
            EndContext();
#line 29 "C:\Users\reeve\Documents\bootcamp\csharp\BeltExam\BeltExam\Views\BeltExam\Details.cshtml"

            Enthusiast newEnthusiast = new Enthusiast();
            newEnthusiast.HobbyId = Model.HobbyId;


#line default
#line hidden
            BeginContext(897, 8, true);
            WriteLiteral("        ");
            EndContext();
            BeginContext(905, 52, false);
            __tagHelperExecutionContext = __tagHelperScopeManager.Begin("partial", global::Microsoft.AspNetCore.Razor.TagHelpers.TagMode.StartTagOnly, "cf3741c073ad90a04e00be74c1de2beb6b0765a26917", async() => {
            }
                                                                        );
            __Microsoft_AspNetCore_Mvc_TagHelpers_PartialTagHelper = CreateTagHelper <global::Microsoft.AspNetCore.Mvc.TagHelpers.PartialTagHelper>();
            __tagHelperExecutionContext.Add(__Microsoft_AspNetCore_Mvc_TagHelpers_PartialTagHelper);
            __Microsoft_AspNetCore_Mvc_TagHelpers_PartialTagHelper.Name = (string)__tagHelperAttribute_0.Value;
            __tagHelperExecutionContext.AddTagHelperAttribute(__tagHelperAttribute_0);
#line 33 "C:\Users\reeve\Documents\bootcamp\csharp\BeltExam\BeltExam\Views\BeltExam\Details.cshtml"
            __Microsoft_AspNetCore_Mvc_TagHelpers_PartialTagHelper.Model = newEnthusiast;

#line default
#line hidden
            __tagHelperExecutionContext.AddTagHelperAttribute("model", __Microsoft_AspNetCore_Mvc_TagHelpers_PartialTagHelper.Model, global::Microsoft.AspNetCore.Razor.TagHelpers.HtmlAttributeValueStyle.DoubleQuotes);
            await __tagHelperRunner.RunAsync(__tagHelperExecutionContext);

            if (!__tagHelperExecutionContext.Output.IsContentModified)
            {
                await __tagHelperExecutionContext.SetOutputContentAsync();
            }
            Write(__tagHelperExecutionContext.Output);
            __tagHelperExecutionContext = __tagHelperScopeManager.End();
            EndContext();
            BeginContext(957, 32, true);
            WriteLiteral("</partial>\r\n    </div>\r\n</div>\r\n");
            EndContext();
        }
Beispiel #18
0
 public ActionResult Create([Bind(Include = "Rating")] RatingModel ratingModel, Enthusiast enthusiast, LocationMarkers locationMarkers)
 {
     //if (ModelState.IsValid)
     //{
     //    RatingModel ratings = new RatingModel();
     //    ratings.MarkerID = locationMarkers.MarkerID;
     //    ratings.EnthusiastID = enthusiast.EnthusiastID;
     //    ratings.Rating = ratingModel.Rating;
     //    db.RatingModel.Add(ratings);
     //    db.SaveChanges();
     //    return RedirectToAction("Index", "Home");
     //}
     //ViewBag.LocationId = new SelectList(db.LocationMarkers, "MarkerID", ratingModel.MarkerID);
     //ViewBag.UserId = new SelectList(db.Enthusiasts, "UserId", "FirstName", ratingModel.EnthusiastID);
     return(View(ratingModel));
 }