コード例 #1
0
        public async Task <ActionResult> UpdateSessionStatus(int Id, string Name, string UserId = "")
        {
            try
            {
                if (Name == "Delete")
                {
                    await _tutorService.DeleteSession(Id);
                }
                else
                {
                    if (string.IsNullOrEmpty(UserId) || UserId == "0")
                    {
                        UserId = User.Identity.GetUserId();
                    }

                    var result = await _tutorService.ApproveDeclineSession(Id, new Sessions()
                    {
                        Status           = Name == "Approve" ? SessionStatus.Approved : SessionStatus.Declined,
                        ApproveDeclineBy = UserId
                    });

                    if (result.Item1)
                    {
                        try
                        {
                            var _session = result.Item2;
                            var _status  = Name == "Approve" ? "Aprroved" : "Declined";
                            var _subject = _status + " Session Request | instanttutors.org";
                            var _body    = "<h3>Session request has been " + _status + ".</h3>"
                                           + "<b>Session Title:</b> " + _session.Title + "<br/>"
                                           + "<b>Description <small>(If Any)</small>:</b> " + _session.Description + "<br/>"
                                           + "<b>Communication Method:</b> " + _session.CommunicationMethod + "<br/><br/>"
                                           + "<a href='http://instanttutors.org/' target='_blank'>Instant Tutors</a> Team @" + DateTime.Now.Year;

                            await EmailSender.SendEmailAsync(_subject, _body);

                            await SMSSender.SMSSenderAsync(_session.Title + " Session request has been " + _status + ".");
                        }
                        catch (Exception ex1)
                        {
                        }
                    }
                }
            }
            catch (Exception ex)
            {
            }
            return(RedirectToAction("Index"));
        }