public async Task <IViewComponentResult> LearnerCalendar2020Async(DailyBookingQueryViewModel viewModel)
        {
            ViewBag.ViewModel = viewModel;
            var profile = await HttpContext.GetUserAsync();

            return(View("~/Views/LearnerProfile/Module/LearnerCalendar2020.cshtml", profile.LoadInstance(models)));
        }
Esempio n. 2
0
        public ActionResult Coach(DateTime?lessonDate, DateTime?endQueryDate, int?branchID, bool?hasQuery, String category, String message = null)
        {
            UserProfile item = HttpContext.GetUser();

            //if (item == null)
            //{
            //    return Redirect(FormsAuthentication.LoginUrl);
            //}

            if (hasQuery == true)
            {
                HttpContext.RemoveCache(CachingKey.DailyBookingQuery);
            }
            DailyBookingQueryViewModel viewModel = HttpContext.InitializeBookingQuery(null, branchID, item);

            if (ViewBag.LessonDate == null)
            {
                if (!lessonDate.HasValue)
                {
                    lessonDate = DateTime.Today;
                }

                ViewBag.LessonDate = lessonDate;
            }
            ViewBag.EndQueryDate = endQueryDate;
            ViewBag.Message      = message;
            ViewBag.ViewModel    = viewModel;
            ViewBag.Category     = category;

            return(View("Coach", item));
        }
        public Task <IViewComponentResult> InvokeAsync(DailyBookingQueryViewModel viewModel)
        {
            models      = (ModelSource <UserProfile>)HttpContext.Items["Models"];
            _modelState = ViewContext.ModelState;

            return(LearnerCalendar2020Async(viewModel));
        }
Esempio n. 4
0
        public ActionResult Index(DailyBookingQueryViewModel viewModel, bool?showTodoTab)
        {
            if (viewModel.KeyID != null)
            {
                viewModel.CoachID = viewModel.DecryptKeyValue();
            }

            var profile = HttpContext.GetUser();

            if (!viewModel.CoachID.HasValue)
            {
                if (profile.IsCoach() || profile.IsAssistant())
                {
                    viewModel.CoachID = profile.UID;
                }
            }

            ViewBag.ViewModel    = viewModel;
            ViewBag.CurrentCoach = models.GetTable <ServingCoach>().Where(s => s.CoachID == viewModel.CoachID).FirstOrDefault();
            ViewBag.ShowTodoTab  = showTodoTab;
            var item = models.GetTable <UserProfile>().Where(s => s.UID == profile.UID).FirstOrDefault();

            if (ViewBag.CurrentCoach == null)
            {
                if (!item.IsAuthorized(new int[] { (int)Naming.RoleID.Administrator, (int)Naming.RoleID.Assistant, (int)Naming.RoleID.Officer, (int)Naming.RoleID.Manager }))
                {
                    ViewBag.CurrentCoach = item.ServingCoach;
                    viewModel.CoachID    = item.UID;
                }
            }

            return(View("~/Views/CoachFacet/Index.aspx", item));
        }
        public ActionResult LearnerCalendar2020(DailyBookingQueryViewModel viewModel)
        {
            ViewBag.ViewModel = viewModel;
            var profile = HttpContext.GetUser();

            return(View("~/Views/LearnerProfile/Module/LearnerCalendar2020.cshtml", profile.LoadInstance(models)));
        }
Esempio n. 6
0
        public ActionResult SelectCoachFacet(DailyBookingQueryViewModel viewModel)
        {
            ViewBag.ViewModel = viewModel;
            var profile = HttpContext.GetUser();
            var item    = profile.LoadInstance(models);

            return(View("~/Views/CoachFacet/Module/SelectCoachFacet.ascx", item));
        }
Esempio n. 7
0
        public ActionResult LoadTrainingExecution(DailyBookingQueryViewModel viewModel, int?stageID)
        {
            ViewBag.ViewModel = viewModel;

            if (viewModel.KeyID != null)
            {
                viewModel.LessonID = viewModel.DecryptKeyValue();
            }

            var item = ViewBag.DataItem = models.GetTable <LessonTime>().Where(u => u.LessonID == viewModel.LessonID).First();

            ViewBag.Learner = models.GetTable <UserProfile>().Where(u => u.UID == viewModel.LearnerID).First();
            ViewBag.StageID = stageID;
            ViewBag.ViewID  = viewModel.ViewID;

            return(View("~/Views/LearnerProfile/Module/LessonTrainingExecution.cshtml", item));
        }
Esempio n. 8
0
        public ActionResult LearnerLessonsReviewDetails(DailyBookingQueryViewModel viewModel)
        {
            ViewBag.ViewModel = viewModel;
            if (viewModel.KeyID != null)
            {
                viewModel.LearnerID = viewModel.DecryptKeyValue();
            }

            var item = models.GetTable <UserProfile>().Where(u => u.UID == viewModel.LearnerID).FirstOrDefault();

            if (item == null)
            {
                return(Json(new { result = false, message = "資料錯誤!!" }));
            }

            return(View("~/Views/LearnerProfile/Module/LearnerLessonsReviewDetails.cshtml", item));
        }
        public async Task <ActionResult> CoachAsync(DailyBookingQueryViewModel viewModel)
        {
            UserProfile item = await HttpContext.GetUserAsync();

            //if (item == null)
            //{
            //    return Redirect($"~{Startup.Properties["LoginUrl"]}");
            //}

            ViewBag.ViewModel = viewModel;

            if (!viewModel.LessonDate.HasValue)
            {
                viewModel.LessonDate = DateTime.Today;
            }

            return(View("Coach", item));
        }
Esempio n. 10
0
        public ActionResult LearnerAttendLesson(DailyBookingQueryViewModel viewModel)
        {
            ViewBag.ViewModel = viewModel;
            if (viewModel.KeyID != null)
            {
                viewModel.LessonID = viewModel.DecryptKeyValue();
            }
            LessonTime item = models.GetTable <LessonTime>().Where(t => t.LessonID == viewModel.LessonID).FirstOrDefault();

            if (item == null)
            {
                return(Json(new { result = false, message = "未登記此上課時間!!" }, JsonRequestBehavior.AllowGet));
            }

            item.LessonPlan.CommitAttendance = DateTime.Now;

            models.SubmitChanges();

            return(Json(new { result = true, message = "資料存檔完成!!" }));
        }
Esempio n. 11
0
        public ActionResult ToConsoleCalendar(DailyBookingQueryViewModel viewModel, String encUID)
        {
            int?uid = null;

            if (encUID != null)
            {
                uid = encUID.DecryptKeyValue();
            }

            var item = models.GetTable <UserProfile>().Where(u => u.UID == uid).FirstOrDefault();

            if (item != null && item.LevelID == (int)Naming.MemberStatusDefinition.Checked)
            {
                HttpContext.SignOn(item);
                return(Redirect(Url.Action("Calendar", "ConsoleHome", viewModel)));
            }
            else
            {
                return(RedirectToAction("Login", "Account"));
            }
        }