示例#1
0
 public IActionResult EditStatus([FromBody] VMSuggestionEditStatus request)
 {
     if (request.UserId != int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value))
     {
         return(Unauthorized());
     }
     if (!_repository.AdminorModerator(request.UserId))
     {
         return(Unauthorized());
     }
     else
     {
         if (!ModelState.IsValid)
         {
             return(BadRequest(ModelState));
         }
         VMMessage msj = _repository.UpdateStatus(request);
         if (msj.IsSuccessful())
         {
             return(Ok("Edited Successfully."));
         }
         else
         {
             return(BadRequest(msj.Text));
         }
     }
 }
示例#2
0
        public IEnumerable <VMMessage> GetFolder(int userId, string folderName)
        {
            List <VMMessage>  result   = new List <VMMessage>();
            List <MessageBox> messages = null;

            switch (folderName.ToLower())
            {
            case "inbox":
                messages = GetBox(userId, BoxType.Inbox).ToList();
                break;

            case "outbox":
                messages = GetBox(userId, BoxType.Outbox).ToList();
                break;

            case "archive":
                messages = GetBox(userId, true).ToList();
                break;
            }

            foreach (MessageBox boxMessage in messages)
            {
                VMMessage msg = new VMMessage(boxMessage);

                result.Add(msg);
            }

            return(result);
        }
示例#3
0
        public IActionResult Edit([FromBody] VMSuggestion request)
        {
            if (request.IdAuthor != int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value))
            {
                return(Unauthorized());
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            if (_repository.isFullfilled(request.Id))
            {
                return(BadRequest());
            }
            request.UpdatedDate = DateTime.Now;
            VMMessage msj = _repository.Update(request);

            if (msj.IsSuccessful())
            {
                return(Ok("Edited Successfully."));
            }
            else
            {
                return(BadRequest(msj.Text));
            }
        }
示例#4
0
        public VMMessage GetByBoxId(int boxId)
        {
            var       boxMessage = repositoryMessage.GetByBoxId(boxId);
            VMMessage result     = new VMMessage(boxMessage, true);

            return(result);
        }
示例#5
0
        public JsonResult Detail(int id)
        {
            VMMessage msg = this.serviceMessage.GetByBoxId(id);
            //VMMessage vm = new VMMessage(msg, true);
            var result = new JsonResult()
            {
                Data = msg, JsonRequestBehavior = JsonRequestBehavior.AllowGet
            };

            return(result);
        }
示例#6
0
 public ActionResult VisitorComment(VMMessage visitorData)
 {
     if (ModelState.IsValid)
     {
         if (message.CreateMessage(visitorData))
         {
             return(Json(new { success = true, }, JsonRequestBehavior.AllowGet));
         }
         else
         {
             return(Json(new { success = false, }, JsonRequestBehavior.AllowGet));
         }
     }
     return(Json(new { success = false, }, JsonRequestBehavior.AllowGet));
 }
示例#7
0
        public bool CreateMessage(VMMessage message)
        {
            var messageData = new Message()
            {
                Name         = message.VisitorName,
                Email        = message.VisitorEmail,
                Comment      = message.VisitorComment,
                CreationTime = DateTime.Now,
            };

            dbReference.Messages.Add(messageData);
            int returnValue = dbReference.SaveChanges();

            return(returnValue > 0 ? true : false);
        }
示例#8
0
        public void Create()
        {
            IRSuggestion r  = new REFSuggestion(new DataContext(TestBaseEF.GetOptionBuilder().Options));
            VMSuggestion vm = new VMSuggestion()
            {
                Title        = "My Test",
                Description  = "My Description",
                CreatedDate  = DateTime.Now,
                UpdatedDate  = DateTime.Now,
                QuantityVote = 0,
                Author       = new VMUserSimple(1)
            };
            VMMessage msj = r.Insert(vm);

            Assert.IsTrue(msj.IsSuccessful());
        }
示例#9
0
        public IActionResult Create([FromBody] VMSuggestionAdd request)
        {
            //var aud = User.Claims.First(x => x.Value == request.Tenant);
            //if (aud == null)
            //    return Unauthorized();
            int currentstatus;

            if (request.IdAuthor != int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value))
            {
                return(Unauthorized());
            }

            if (_repository.Moderation(request.IdAuthor) && !_repository.AdminorModerator(request.IdAuthor))
            {
                currentstatus = 1;
            }
            else
            {
                currentstatus = 2;
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            VMSuggestion vm = new VMSuggestion()
            {
                Title        = request.Title.ToUpper(),
                Description  = request.Description,
                CreatedDate  = DateTime.Now,
                UpdatedDate  = DateTime.Now,
                QuantityVote = 0,
                Author       = new VMUserSimple(request.IdAuthor),
                StatusId     = currentstatus
            };
            VMMessage msj = _repository.Insert(vm);

            if (msj.IsSuccessful())
            {
                return(Ok(vm));
            }
            else
            {
                return(BadRequest(msj.Text));
            }
        }
示例#10
0
        public IActionResult Remove(int id)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            VMMessage msj = _repository.Delete(id);

            if (msj.IsSuccessful())
            {
                return(Ok("Deleted Successfully."));
            }
            else
            {
                return(BadRequest(msj.Text));
            }
        }
示例#11
0
        public JsonResult Archive(int id)
        {
            Message message = serviceMessage.Archive(id, CurrentUser);
            var     data    = new VMMessage()
            {
                Body   = message.Body,
                Sender = message.CreatedBy.DisplayName,
                SentOn = message.CreatedOn.ToString("dd-MMM-yyyy hh:mm"),
                Title  = message.Title,
                Id     = message.Id
            };
            var result = new JsonResult()
            {
                Data = data
            };

            return(result);
        }
示例#12
0
        public JsonResult Send(string to, string body, string title, int?replyTo)
        {
            IEnumerable <int> destinationIds = this.serviceMessage.GetDestinationIds(to);
            Message           message        = new Message()
            {
                Body = body, Title = title
            };

            message = this.serviceMessage.Send(message, CurrentUser, destinationIds, replyTo);
            //todo  : use automapper
            VMMessage vm = new VMMessage(message);


            var result = new JsonResult()
            {
                Data = vm, JsonRequestBehavior = JsonRequestBehavior.AllowGet
            };

            return(result);
        }
示例#13
0
        public IActionResult Create([FromBody] VMReplyAdd request)
        {
            if (request.IdAuthor != int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value))
            {
                return(Unauthorized());
            }

            if (!_repository.AdminorModerator(request.IdAuthor))
            {
                return(Unauthorized());
            }
            if (_repository.isFullfilled(request.IdSuggestion))
            {
                return(BadRequest());
            }
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            VMReply vm = new VMReply()
            {
                Description  = request.Description,
                CreatedDate  = DateTime.Now,
                UpdatedDate  = DateTime.Now,
                Author       = new VMUserSimple(request.IdAuthor),
                IdSuggestion = request.IdSuggestion
            };
            VMMessage msj = _repository.Insert(vm);

            if (msj.IsSuccessful())
            {
                return(Ok(vm));
            }
            else
            {
                return(BadRequest(msj.Text));
            }
        }
示例#14
0
        public ActionResult Reply(VMMessage message)
        {
            if (string.IsNullOrEmpty(message.Name) || string.IsNullOrEmpty(message.Email) ||
                string.IsNullOrEmpty(message.Subject) || string.IsNullOrEmpty(message.Text))
            {
                Session["EmptyMail"] = true;
                if (message.Page == "CourseDetails")
                {
                    return(RedirectToAction("CourseDetails", "Course", new { id = message.ContactId }));
                }
                else if (message.Page == "EventDetails")
                {
                    return(RedirectToAction("EventDetails", "Event", new { id = message.EventId }));
                }
                else if (message.Page == "BlogDetails")
                {
                    return(RedirectToAction("BlogDetails", "Blog", new { id = message.BlogId }));
                }
                else
                {
                    return(RedirectToAction("Index", "Contact"));
                }
            }
            if (Session["User"] != null)
            {
                Message mes = new Message();

                mes.Name        = message.Name;
                mes.Email       = message.Email;
                mes.Subject     = message.Subject;
                mes.Text        = message.Text;
                mes.UserId      = message.UserId;
                mes.EventId     = message.EventId;
                mes.CourseId    = message.CourseId;
                mes.ContactId   = message.ContactId;
                mes.CreatedDate = DateTime.Now;
                db.Messages.Add(mes);
                db.SaveChanges();

                Session["Sent"] = true;

                if (message.Page == "CourseDetails")
                {
                    return(RedirectToAction("CourseDetails", "Course", new { id = message.ContactId }));
                }
                else if (message.Page == "EventDetails")
                {
                    return(RedirectToAction("EventDetails", "Event", new { id = message.EventId }));
                }
                else if (message.Page == "BlogDetails")
                {
                    return(RedirectToAction("BlogDetails", "Blog", new { id = message.BlogId }));
                }
                else
                {
                    return(RedirectToAction("Index", "Contact"));
                }
            }

            return(RedirectToAction("Login", "Login"));
        }