예제 #1
0
        public async Task <UIResponse> Submit(byte[] bytes)
        {
            if (IsBusy)
            {
                return(new UIResponse());
            }

            IsBusy    = true;
            ImageData = bytes;
            var location = Settings.CameraLocation;

            var result = new UIResponse();
            AudienceResponse response = await AzureService.CaptureAudience(location, imageData);

            if (!response.HasError)
            {
                //Saves to the cache with a timespan for expiration
                var capture = new AudienceData()
                {
                    ImageData = imageData, Location = location, Audience = response.Audience
                };
                Barrel.Current.Add(StorageIds.CurrentCapture, capture, TimeSpan.FromMinutes(5));

                result.Result = true;
            }
            else
            {
                result.Message = response.Message;
            }

            IsBusy = false;
            return(result);
        }
        public JsonResult JSonModelStateHandle()
        {
            this.UIResponse = new UIResponse
            {
                ResultType = OperationResultType.Warn,
                Data       = ModalStateErrorHandle(),
                Message    = "ValidationErrors",
            };

            return(Json(this.UIResponse, JsonRequestBehavior.AllowGet));
        }
예제 #3
0
        public ActionResult GetTicket(int ticketId)
        {
            var resp = _tickManager.GetSupportTicketById(new GetSupportTicketByIDRequest() { TicketID = ticketId });
            var model = new SupportTicketEditModel(resp.Ticket);

            var uiresult = new UIResponse<SupportTicketEditModel>();
            uiresult.Subject = model;
            uiresult.HtmlResult = RenderPartialViewToString("ResolveSupportTicket", model);
            uiresult.Status = resp.Status;

            return Json(uiresult, JsonRequestBehavior.AllowGet);
        }
예제 #4
0
        public ActionResult AddVendor()
        {
            var viewModel = new VendorEditModel(new C.Vendor());

            var uiresult = new UIResponse<VendorEditModel>();

            uiresult.Subject = viewModel;

            uiresult.HtmlResult = RenderPartialViewToString("EditVendor", viewModel);

            return Json(uiresult, JsonRequestBehavior.AllowGet);
        }
예제 #5
0
        public ActionResult AddProfile()
        {
            var model = new OrderProfileAddEditModel();
            model.Profile.UserId = AuthenticatedUserId;

            //populate data here

            var uiresult = new UIResponse<OrderProfileAddEditModel>();
            uiresult.Subject = model;
            uiresult.HtmlResult = RenderPartialViewToString("AddProfile", model);
            uiresult.Status = Status.Success;
            return Json(uiresult, JsonRequestBehavior.AllowGet);
        }
예제 #6
0
        public ActionResult EditProfile(int profileId)
        {
            var model = new OrderProfileAddEditModel();
            var resp = _profManager.GetOrderProfileById(new GetOrderProfileByIdRequest() { ProfileId = profileId });

            model.Profile = resp.Value;

            var uiresult = new UIResponse<OrderProfileAddEditModel>();
            uiresult.Subject = model;
            uiresult.HtmlResult = RenderPartialViewToString("EditProfile", model);
            uiresult.Status = Status.Success;
            return Json(uiresult, JsonRequestBehavior.AllowGet);
        }
예제 #7
0
        public ActionResult AddFoodOption(int vendorId)
        {
            var m = new FoodOptionEditModel();

            m.Subject.VendorId = vendorId;

            var uiresult = new UIResponse<FoodOptionEditModel>();

            uiresult.Subject = m;

            uiresult.HtmlResult = RenderPartialViewToString("AddEdit", m);

            return Json(uiresult, JsonRequestBehavior.AllowGet);
        }
예제 #8
0
        public ActionResult AddFoodItem(int vendorId)
        {
            var m = new FoodItemEditModel();

            var uiresult = new UIResponse<FoodItemEditModel>();

            m.Categories = _vendorMgr.GetFoodCategoriesByVendor(new GetFoodCategoriesByVendorRequest { VendorId = vendorId }).FoodCategories;

            uiresult.Subject = m;

            uiresult.HtmlResult = RenderPartialViewToString("AddEdit", m);

            return Json(uiresult, JsonRequestBehavior.AllowGet);
        }
예제 #9
0
        public ActionResult GetUserInfo(int userId)
        {
            var resp = _userManager.GetWfsUserInfoById(new GetWfsUserInfoByIdRequest() { UserId = userId });

            var m = new UserEditModel()
            {
                UserInfo = resp.Value
            };

            var uiresult = new UIResponse<UserEditModel>();
            uiresult.Subject = m;
            uiresult.HtmlResult = RenderPartialViewToString("UserInfo", m);
            uiresult.Status = resp.Status;
            return Json(uiresult, JsonRequestBehavior.AllowGet);
        }
예제 #10
0
        public ActionResult AddFoodCategory(int vendorId)
        {
            var m = new FoodCategoryEditModel();

            m.Subject.VendorId = vendorId;

            SetCategoryTypes(FoodCategoryTypeEnum.Entree);

            var uiresult = new UIResponse<FoodCategoryEditModel>();

            uiresult.Subject = m;

            uiresult.HtmlResult = RenderPartialViewToString("AddEdit", m);

            return Json(uiresult, JsonRequestBehavior.AllowGet);
        }
예제 #11
0
        public ActionResult GetUnresolvedTickets()
        {
            var resp = _tickManager.GetUnresolvedSupportTickets(new GetUnResolvedSupportTicketRequest());

            var model = new SupportTicketListViewModel()
            {
                Tickets = resp.Tickets
            };

            var uiresult = new UIResponse<SupportTicketListViewModel>();
            uiresult.Subject = model;
            uiresult.HtmlResult = RenderPartialViewToString("UnresolvedTicketList", model);
            uiresult.Status = resp.Status;

            return Json(uiresult, JsonRequestBehavior.AllowGet);
        }
예제 #12
0
        public ActionResult PerformSearch(string searchText, string filter)
        {
            var resp = _userManager.GetUserSearchByNameAndFilter(new UserSearchRequest() { SearchText = searchText.Trim(), RoleFilter = (filter == "All") ? string.Empty : filter.Trim() });

            var m = new SearchResultsViewModel();

            foreach (var item in resp.Values)
            {
                m.Results.Add(new SearchResult()
                    {
                        DisplayName = String.Format("{0}, {1}", item.LastName, item.FirstName),
                        EmailAddress = item.EmailAddress,
                        UserId = item.UserId,
                        MembershipId = item.MembershipGuid,
                        AccountType = item.UserType.ToString()
                    });
            }

            var uiresult = new UIResponse<SearchResultsViewModel>();
            uiresult.Subject = m;
            uiresult.HtmlResult = RenderPartialViewToString("SearchResults", m);
            uiresult.Status = resp.Status;
            return Json(uiresult, JsonRequestBehavior.AllowGet);
        }
예제 #13
0
        public ActionResult ShowTerms()
        {
            var uiresponse = new UIResponse<RegisterModel>();

            uiresponse.Status = Status.Success;
            uiresponse.HtmlResult = RenderPartialViewToString("TermsAndCond", null);

            return Json(uiresponse, JsonRequestBehavior.AllowGet);
        }
예제 #14
0
        private UIResponse<OrderProfileViewModel> GetListOfProfiles()
        {
            var resp = _profManager.GetListOfProfiles(new GetOrderProfileListRequest() { UserId = AuthenticatedUserId });
            var model = new OrderProfileViewModel()
            {
                Profiles = resp.Values
            };

            var uiresult = new UIResponse<OrderProfileViewModel>();
            uiresult.Subject = model;
            uiresult.HtmlResult = RenderPartialViewToString("ProfileList", model);
            uiresult.Status = resp.Status;
            return uiresult;
        }
예제 #15
0
        public ActionResult SetSchoolInfo(OrderProfileAddEditModel model)
        {
            var uiresult = new UIResponse<OrderProfileAddEditModel>();
            uiresult.Subject = model;

            var resp = _profManager.GetOrderProfleSetupDataBySchool(new GetOrderProfleSetupDataRequest() { SchoolId = model.Profile.SchoolId });

            model.Grades.Clear();
            model.LunchPeriods.Clear();
            model.Teachers.Clear();

            resp.Grades.ForEach(x => model.Grades.Add(new SelectListItem() { Value = x.SchoolGradeId.ToString(), Text = x.Name }));
            resp.LunchPeriods.ForEach(x => model.LunchPeriods.Add(new SelectListItem() { Value = x.LunchPeriodId.ToString(), Text = String.Format("{0} - {1}", x.StartTime.ToShortTimeString(), x.EndTime.ToShortTimeString()) }));
            resp.Teachers.ForEach(x => model.Teachers.Add(new SelectListItem() { Value = x.TeacherId.ToString(), Text = String.Format("{0}, {1}", x.LastName, x.FirstName) }));

            uiresult.HtmlResult = RenderPartialViewToString("StudentInfo", model);
            uiresult.Status = Status.Success;
            return Json(uiresult, JsonRequestBehavior.AllowGet);
        }
예제 #16
0
        public ActionResult SetInfo(OrderProfileAddEditModel model)
        {
            //populate data here
            if (model.IsSchool.Value)
            {
                var resp = _schoolMgr.GetSchoolList(new GetSchoolsRequest() { DataRequest = ActiveDataRequestEnum.ActiveOnly });

                model.Schools.Clear();

                model.Schools.Add(new SelectListItem() { Value = "0", Text = "Please Select a School", Selected = true });
                foreach (var x in resp.Schools)
                    model.Schools.Add(new SelectListItem() { Value = x.OrganizationId.ToString(), Text = x.Name });
            }

            var uiresult = new UIResponse<OrderProfileAddEditModel>();
            uiresult.Subject = model;

            uiresult.HtmlResult = RenderPartialViewToString(model.IsSchool.Value ? "SchoolInfo" : "EmployeeInfo", model);
            uiresult.Status = Status.Success;
            return Json(uiresult, JsonRequestBehavior.AllowGet);
        }
예제 #17
0
        public UIResponse dialog(string message, string okButtonName, string cancelButtonName, int textSize = 0, float x = -1.0f, float y = -1.0f, float w = 0.0f, float h = 0.0f)
        {
            pushStyle();
            pushMatrix("dialog");

            bool isAutoResize = (h <= 0.0f);

            if (isAutoResize)
            {
                if (w <= 0.0f)
                {
                    w = width * 0.85f;
                }
                h = w / 8;
            }
            textSize = autoTextSize(w, h, textSize);
            float messageH = textSize;
            float buttonH  = textSize * 2;
            float margin   = textSize;

            h = messageH + buttonH + margin * 3;
            if (isAutoResize)
            {
                if (y < 0.0f)
                {
                    y = (height - h) * 0.5f;
                }
            }
            if (x < 0.0f)
            {
                x = (width - w) * 0.5f;
            }

            // BG
            if (uiStyle.normal.frameWeight > 0)
            {
                stroke(uiStyle.normal.frameColor);
                strokeWeight(uiStyle.normal.frameWeight);
                fill(uiStyle.normal.bgColor);
            }
            else
            {
                noStroke();
                fill(uiStyle.normal.frameColor);
            }
            rect(x, y, w, h);

            // Message
            y += margin;
            label(message, x, y, w, messageH);
            y += messageH;

            // Button
            y += margin;
            float      buttonW = w / 2;
            UIResponse ret     = UIResponse.NONE;

            if (cancelButtonName != null)
            {
                x       += margin;
                buttonW -= margin * 1.5f;
                if (button(okButtonName, x, y, buttonW, buttonH))
                {
                    ret = UIResponse.OK;
                }
                x += buttonW + margin;
                if (button(cancelButtonName, x, y, buttonW, buttonH))
                {
                    ret = UIResponse.CANCEL;
                }
            }
            else
            {
                x += buttonW / 2;
                if (button(okButtonName, x, y, buttonW, buttonH))
                {
                    ret = UIResponse.OK;
                }
            }

            popMatrix("dialog");
            popStyle();
            return(ret);
        }
예제 #18
0
        public ActionResult UpdatePassword(UpdateAccountModel model)
        {
            var user = Membership.GetUser(model.UserInfo.MembershipGuid);
            var res = user.ChangePassword(model.OldPassword, model.Password);

            if (res)
            {
                var uiresponse = new UIResponse<UpdateAccountModel>();
                uiresponse.Subject = model;
                uiresponse.Status = Status.Success;
                return Json(uiresponse);
            }
            else
            {
                var uiresponse = new UIResponse<UpdateAccountModel>();
                uiresponse.Subject = model;
                uiresponse.Status = Status.Error;
                return Json(uiresponse);
            }
        }
예제 #19
0
        public ActionResult Register(RegisterModel model)
        {
            if (ModelState.IsValid)
            {
                var acct = new WFSUser();
                acct.FirstName = model.FirstName;
                acct.LastName = model.LastName;
                acct.Password = model.Password;
                acct.UserType = WFSUserTypeEnum.Customer;
                acct.EmailAddress = model.Email;
                acct.BillingAddress = new PhoneAddress()
                {
                    Address1 = model.AddressInfo.Address1,
                    Address2 = model.AddressInfo.Address2,
                    City = model.AddressInfo.City,
                    State = model.AddressInfo.State,
                    ZipCode = model.AddressInfo.ZipCode,
                    PhoneNumber = model.AddressInfo.PhoneNumber,
                    PhoneExt = model.AddressInfo.PhoneExt,
                };

                var resp = _wfsUSerManager.SaveCustomer(new SaveWFSUserRequest() { UserInfo = acct });

                if (resp.Status == Status.Success)
                {
                    FormsAuthentication.SetAuthCookie(model.Email, createPersistentCookie: false);

                    AddAuthCookie(resp.UserInfo.UserId, resp.UserInfo.MembershipGuid);

                    var uiresponse = new UIResponse<Guid>();
                    return Json(uiresponse);
                }
                else
                {
                    var uiresponse = new UIResponse<RegisterModel>();

                    model.Merge(resp);
                    uiresponse.Status = resp.Status;
                    uiresponse.Subject = model;
                    uiresponse.HtmlResult = RenderPartialViewToString("Register", model);

                    return Json(uiresponse);
                }
            }

            return View(model);
        }