Esempio n. 1
0
        protected override void DoRequest(AjaxContext context, JsonData input, JsonData output)
        {
            // get...
            AjaxValidator validator = new AjaxValidator();
            string username = validator.GetRequiredString(input, "username");
            string password = validator.GetRequiredString(input, "password");

            // ok?
            if (validator.IsOk)
            {
                // get...
                User user = User.GetByUsername(context, username);
                if (user != null)
                {
                    // check...
                    if (user.CheckPassword(password))
                    {
                        // create an access token...
                        Token token = Token.CreateToken(context, user);
                        if (token == null)
                            throw new InvalidOperationException("'token' is null.");

                        // set...
                        output["token"] = token.TheToken;
                    }
                    else
                        validator.AddError("Password is invalid.");
                }
                else
                    validator.AddError("Username is invalid.");
            }

            // set...
            validator.Apply(output);
        }
        protected override void DoRequest(AjaxContext context, JsonData input, JsonData output)
        {
            // get...
            string name = input.GetValueSafe<string>("name");

            // return...
            output["result"] = string.Format("Hello, {0}.", name);
        }
Esempio n. 3
0
        //Task 2
        public JsonResult GetUserInfo(string userId)
        {
            var context = new AjaxContext();

            var user = context.Users
                       .FirstOrDefault(u => u.Id == userId);

            return(Json(user, JsonRequestBehavior.AllowGet));
        }
Esempio n. 4
0
        //Task 2
        public ActionResult Index()
        {
            //Horrible code for the purpose of testing the Ajax.
            var context = new AjaxContext();

            var users = context.Users;

            return(View("Index", users));
        }
        protected override void DoRequest(AjaxContext context, JsonData input, JsonData output)
        {
            if (context.User == null)
                throw new InvalidOperationException("'context.User' is null.");

            // run...
            IEnumerable<Report> reports = Report.GetByUser(context, context.User);
            output["reports"] = Entity.ToJson<Report>(reports);
        }
        //Task 2
        public ActionResult Index()
        {
            //Horrible code for the purpose of testing the Ajax.
            var context = new AjaxContext();

            var users = context.Users;

            return View("Index", users);
        }
        //Task 2
        public JsonResult GetUserInfo(string userId)
        {
            var context = new AjaxContext();

            var user = context.Users
                .FirstOrDefault(u => u.Id == userId);

            return Json(user, JsonRequestBehavior.AllowGet);
        }
Esempio n. 8
0
        public JsonResult GetCities(string letters)
        {
            var context = new AjaxContext();

            var cities = context.Cities
                .Where(c => c.CityName.StartsWith(letters))
                .OrderBy(c => c.CityName)
                .Take(5);

            return Json(cities, JsonRequestBehavior.AllowGet);
        }
        //Task 1
        public JsonResult CheckUserName(string username)
        {
            var context = new AjaxContext();

            if (context.Users.Any(u => u.UserName.ToLower() == username.ToLower()))
            {
                return Json(0);
            }

            if (username.IsNullOrWhiteSpace())
            {
                return Json(1);
            }

            return Json(2);
        }
Esempio n. 10
0
        //Task 1
        public JsonResult CheckUserName(string username)
        {
            var context = new AjaxContext();

            if (context.Users.Any(u => u.UserName.ToLower() == username.ToLower()))
            {
                return(Json(0));
            }

            if (username.IsNullOrWhiteSpace())
            {
                return(Json(1));
            }

            return(Json(2));
        }
        protected override void DoRequest(AjaxContext context, JsonData input, JsonData output)
        {
            if (context.User == null)
                throw new InvalidOperationException("'context.User' is null.");

            // does the user have any reports?
            if (!(context.User.HasReports(context)))
            {
                // create...
                Random rand = new Random();
                string[] verbs = { "Fix", "Repair", "Remove", "Clean" };
                string[] adjectives = { "Broken", "Damaged", "Inappropriate" };
                string[] nouns = { "Light", "Kerb", "Wall", "Sign", "Pavement" };

                string[] lipsums = { "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec placerat purus sed orci lobortis id aliquet metus pharetra. Phasellus eget viverra magna. Cras lobortis sapien blandit erat aliquam lacinia. Vivamus nec dolor vel turpis tincidunt cursus. Nunc porta, augue nec feugiat eleifend, ante lectus porta dui, vitae rutrum urna mi laoreet nunc. Suspendisse ante justo, rutrum nec varius consequat, condimentum a mi. Donec adipiscing aliquam blandit. Phasellus eu lacus et augue vulputate porttitor nec sed justo. Fusce elit dolor, placerat quis ornare nec, dignissim vitae est.",
                    "Mauris fermentum ultrices posuere. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Ut tellus nulla, mollis et porta a, iaculis eu ipsum. Vestibulum scelerisque, sem a ullamcorper dapibus, est dolor fringilla est, vitae bibendum diam purus at eros. Proin fermentum est id risus cursus nec ullamcorper tortor dictum. Sed velit nisl, egestas vel varius nec, rutrum vel arcu. Mauris iaculis vehicula mi, hendrerit mattis purus faucibus id. Nunc suscipit urna eget libero accumsan tincidunt molestie leo volutpat. Nunc porta lacus justo. In luctus diam nec lacus vestibulum euismod.",
                    "In malesuada vulputate ipsum sed posuere. Cras pretium venenatis tellus, quis vehicula est auctor vel. In posuere adipiscing urna, ac tempor enim mollis ac. Cras vehicula pulvinar tellus quis blandit. Suspendisse potenti. Phasellus sodales imperdiet venenatis. Quisque pulvinar facilisis orci, nec venenatis arcu faucibus non. Aliquam vehicula ante id nisl facilisis cursus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Suspendisse tellus neque, imperdiet a rhoncus vitae, vestibulum ac sapien. Donec vitae sapien non mauris fermentum vulputate non ac dui. Duis hendrerit purus id justo volutpat tristique. Cras ut turpis tellus, vel dapibus diam.",
                    "Curabitur gravida elementum auctor. Vestibulum euismod, nisi in elementum dignissim, nisl quam laoreet magna, ut iaculis dolor massa ut urna. Cras velit turpis, laoreet nec rhoncus id, porttitor id velit. Ut non mi non quam interdum elementum. Morbi nec lectus neque. Donec bibendum, mi et condimentum pellentesque, felis lorem ultricies nisl, at sollicitudin magna arcu ut velit. Curabitur vitae lacus quis tellus fringilla consectetur. Cras malesuada enim eu quam elementum a lobortis libero cursus. Duis volutpat, libero ut placerat mollis, sem tortor condimentum justo, ut tincidunt risus diam ultricies dolor. Nullam mi dolor, ultricies et iaculis ut, accumsan sed tortor.",
                    "Donec in eros ac sem sollicitudin euismod eu nec magna. Quisque placerat congue arcu sit amet tincidunt. Vestibulum vitae metus metus. Nulla vitae turpis quam. Nunc eu elit quam. Sed condimentum congue elit, sed lobortis orci congue eget. Cras sit amet ante et dui sodales condimentum sit amet ut odio. Aliquam sollicitudin, sem vel eleifend ornare, turpis risus interdum turpis, non dictum dolor magna auctor urna." };

                // create...
                List<Report> reports = new List<Report>();
                for (int index = 0; index < 50; index++)
                {
                    string title = Randomize(rand, verbs, adjectives, nouns);
                    string description = GetRandom(rand, lipsums);

                    // create...
                    decimal lat = Latitudes[index];
                    decimal lng = Longitude[index];
                    reports.Add(Report.CreateReport(context, context.User, title, description, lat, lng));
                }

                // return.. including fudged validator output...
                output["reports"] = Entity.ToJson<Report>(reports);
                output["reportsExisted"] = false;
            }
            else
                output["reportsExisted"] = true;

            // ok...
            new AjaxValidator().Apply(output);
        }
        protected override void DoRequest(AjaxContext context, JsonData input, JsonData output)
        {
            // get...
            AjaxValidator validator = new AjaxValidator();
            string title = validator.GetRequiredString(input, "title");
            string description = validator.GetRequiredString(input, "description");

            // ok?
            if (validator.IsOk)
            {
                // lat/long - tbd...
                Report report = Report.CreateReport(context, context.User, title, description, 0, 0);
                if (report == null)
                    throw new InvalidOperationException("'report' is null.");

                // set...
                output["reportId"] = report._id.ToString();
            }

            // set...
            validator.Apply(output);
        }
        protected override void DoRequest(AjaxContext context, JsonData input, JsonData output)
        {
            AjaxValidator validator = new AjaxValidator();
            var id = validator.GetRequiredString(input, "nativeId");

            if (validator.IsOk)
            {
                // what is it...
                string asString = id.Substring(id.Length - 2);
                int asInt = Convert.ToInt32(asString, 16);

                // which one...
                string resourceName = string.Format("Mbrit.StreetFoo.Resources.Graffiti{0:d2}.jpg", asInt % 5);
                var inStream = typeof(FooRuntime).Assembly.GetManifestResourceStream(resourceName);
                if (inStream == null)
                    throw new InvalidOperationException(string.Format("A resource with name '{0}' was not found.", resourceName));
                using (inStream)
                {
                    using (var outStream = new MemoryStream())
                    {
                        var bs = new byte[32768];
                        while (true)
                        {
                            int read = inStream.Read(bs, 0, bs.Length);
                            if (read == 0)
                                break;

                            outStream.Write(bs, 0, read);
                        }

                        // set...
                        output["image"] = Convert.ToBase64String(outStream.ToArray());
                    }
                }
            }

            // ok...
            validator.Apply(output);
        }
        protected override void DoRequest(AjaxContext context, JsonData input, JsonData output)
        {
            // get...
            AjaxValidator validator = new AjaxValidator();
            string username = validator.GetRequiredString(input, "username");
            string email = validator.GetRequiredString(input, "email");
            string password = validator.GetRequiredString(input, "password");
            string confirm = validator.GetRequiredString(input, "confirm");

            // check...
            if (validator.IsOk)
            {
                if (!(string.IsNullOrEmpty(password)) && password != confirm)
                    validator.AddError("Passwords do not match.");
            }

            // ok?
            if (validator.IsOk)
            {
                // get...
                User user = User.GetByUsername(context, username);
                if (user == null)
                {
                    user = User.CreateUser(context, username, email, password);
                    if (user == null)
                        throw new InvalidOperationException("'user' is null.");

                    // set...
                    output["userId"] = user._id.ToString();
                }
                else
                    validator.AddError("Username already in use.");
            }

            // set...
            validator.Apply(output);
        }
 public HomeController()
 {
     _context = new AjaxContext();
 }
 public PeopleController(AjaxContext context)
 {
     _context = context;
 }
Esempio n. 17
0
 public HomeController(ILogger <HomeController> logger, AjaxContext context)
 {
     _logger  = logger;
     _context = context;
 }