Ejemplo n.º 1
0
        /// <summary>
        /// Method to unsubscribe user by subId from Database
        /// </summary>
        /// <param name="email"></param>
        /// <returns></returns>
        public Task UnsubscribeUser(int subId)
        {
            var result = _context.Subscriptions.Find(subId);

            _context.Subscriptions.Remove(result);
            _context.SaveChanges();
            return(Task.FromResult(result));
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Method to edit rate by id from Database
        /// </summary>
        /// <param name="serviceId"></param>
        /// <returns></returns>
        public Task <Rate> EditRateById(int rateId, string rateName, decimal rateCost)
        {
            var rate = _context.Rates.Find(rateId);

            rate.RateName = rateName;
            rate.RateCost = rateCost;
            _context.SaveChanges();
            return(Task.FromResult(rate));
        }
Ejemplo n.º 3
0
        public async Task <ActionResult> Create(LtiMeetingViewModel ltiMeetingViewModel)
        {
            var ltiRequest = GetLtiRequestFromClaim();

            if (ltiRequest == null)
            {
                return(RedirectToAction("BadRequest", "Error", new { error = "Invalid LTI request" }));
            }

            var consumer = _providerContext.Consumers.SingleOrDefault(c => c.Key.Equals(ltiRequest.ConsumerKey));

            if (consumer == null)
            {
                return(RedirectToAction("BadRequest", "Error", new { error = "Invalid Consumer" }));
            }

            var meeting = Mapper.MapLtiMeetingViewModelToMeeting(ltiMeetingViewModel);

            var email   = User.Identity.GetUserName();
            var appUser = _applicationUserManager.GetUsers().FirstOrDefault(x => x.Email == email);

            if (appUser == null)
            {
                return(RedirectToAction("BadRequest", "Error",
                                        new { error = "You do not have the correct permissions to access this feature" }));
            }

            await _apiClient.GetToken(appUser);

            var response = await _apiClient.ScheduleMeeting(meeting);

            var meetingResponse = JsonConvert.DeserializeObject <Meeting>(await response.Content.ReadAsStringAsync());

            var ltiMeeting = new LtiMeeting
            {
                Consumer     = consumer,
                CourseId     = ltiRequest.ContextId,
                Title        = ltiMeetingViewModel.title,
                MeetingId    = meetingResponse.id,
                TeacherEmail = appUser.Email
            };

            _providerContext.LtiMeetings.Add(ltiMeeting);
            _providerContext.SaveChanges();

            return(RedirectToAction("Index"));
        }