コード例 #1
0
        public ActionResult JoinGroup(MemberGroupmembers model)
        {
            try
            {
                MemberGroupmembers itm = new MemberGroupmembers();
                itm = AutoMapper.Mapper.Map(model, itm);

                if (Data.Helper.NHibernateHelper.Count("select m.Id from MemberGroupmembers m where m.MemberDetails.Id=? and m.Group.Id=?", new object[] { itm.MemberDetails, itm.Group }, new NHibernate.Type.IType[] { NHibernate.NHibernateUtil.Int32, NHibernate.NHibernateUtil.Int32 }, false) > 0)
                    throw new Exception("The requested user is already a member of this group.");

                itm.MemberDetails = Data.Helper.NHibernateHelper.UniqueResult<MemberDetails>(null, "Id", model.MemberDetails.Id);
                itm.Group = Data.Helper.NHibernateHelper.UniqueResult<MemberGroups>(null, "Id", model.Group.Id);

                Data.Helper.NHibernateHelper.Save<MemberGroupmembers>(itm);
                TempData["message"] = "Requested Membership is updated now";
            }
            catch (Exception exc)
            {

                TempData["message"] = "Error Joining the requested group: " + exc.Message + exc.StackTrace;
            }
            return RedirectToAction("Index");
        }
コード例 #2
0
        private ActionResult JoinGroup(MemberRequests thisReq)
        {
            try
            {
                if (thisReq.Senderid.Id == LoggedInUserKey)
                {
                    throw new Exception("You are already a member of your group.");
                }

                // = Data.Helper.NHibernateHelper.UniqueResult<MemberRequests>(null, "Guid", model.Guid);

                MemberGroupmembers itm = new MemberGroupmembers();
                //itm = AutoMapper.Mapper.Map(model, itm);
                itm.MemberDetails = Data.Helper.NHibernateHelper.UniqueResult<MemberDetails>(null, "Id", thisReq.Recipientid.Id);
                itm.Group = Data.Helper.NHibernateHelper.UniqueResult<MemberGroups>(null, "Id", thisReq.TargetPageid);
                itm.bRole = false;
                itm.bStatus = true;

                if (itm.Group == null)
                {
                    throw new Exception("Group No more available.");
                }

                if (Data.Helper.NHibernateHelper.UniqueResult<MemberGroupmembers>(null, new string[] { "MemberDetails.Id", "Group.Id" }, new object[] { thisReq.Recipientid.Id, thisReq.TargetPageid }) != null)
                {
                    string erText = "This user is already member of this group.";
                    throw new Exception(erText);
                }

                Data.Helper.NHibernateHelper.Save<MemberGroupmembers>(itm);

                string strSender = "Hello " + thisReq.Senderid.Givennm + ", " + thisReq.Recipientid.Givennm + " has joined your paper group.";
                string strRecipient = "Hello" + thisReq.Recipientid.Givennm + ", you are now a member of the group " + itm.Group.Name;

                Alert(thisReq.Senderid.Id, strSender);
                Alert(LoggedInUserKey, strRecipient);

                //thisInvite.BecameUserId = itm.Id;
                Data.Helper.NHibernateHelper.Delete<MemberRequests>(thisReq);

                TempData["message"] = "You are now a member of requested group";

            }
            catch (Exception ex)
            {
                Data.Helper.NHibernateHelper.Log(new Exception("Error accepting Join group Request. User Id:" + thisReq.Recipientid.Id + ", group Id:" + thisReq.TargetPageid.Value, ex));
                Data.Helper.NHibernateHelper.Delete<MemberRequests>(thisReq);
                TempData["message"] = ex.Message + ex.StackTrace;
            }
            return RedirectToAction("Index", "Group");
        }