public ActionResult List(long?id, Guid?token)
        {
            if (!id.HasValue)
            {
                return(this.NotFoundException());
            }

            if (!User.Identity.IsAuthenticated && token.HasValue)
            {
                var user = authAdapter.ValidateAuthToken(token.Value);

                if (user.StatusCode == 200)
                {
                    CustomAuthentication.SetAuthCookie(user.Result.Username, user.Result.UserId, true);
                    return(RedirectToAction("list", new { id = id }));
                }
            }

            var status = this.propertyAdapter.GetPropertyListingInfo(id.Value, User.Identity.Name);

            if (status.StatusCode != 200)
            {
                return(this.NotFoundException());
            }

            Rentler.Web.Models.PropertyListModel model = new Models.PropertyListModel(status.Result);

            model.StepsAvailable = GetStepsAvailable(status.Result);

            return(View(model));
        }
        public ActionResult List(long? id, Guid? token)
        {
            if (!id.HasValue)
                return this.NotFoundException();

            if (!User.Identity.IsAuthenticated && token.HasValue)
            {
                var user = authAdapter.ValidateAuthToken(token.Value);

                if (user.StatusCode == 200)
                {
                    CustomAuthentication.SetAuthCookie(user.Result.Username, user.Result.UserId, true);
                    return RedirectToAction("list", new { id = id });
                }
            }

            var status = this.propertyAdapter.GetPropertyListingInfo(id.Value, User.Identity.Name);

            if (status.StatusCode != 200)
                return this.NotFoundException();

            Rentler.Web.Models.PropertyListModel model = new Models.PropertyListModel(status.Result);

            model.StepsAvailable = GetStepsAvailable(status.Result);

            return View(model);
        }