public static CityModel MapCityForDisplay(city model)
        {
            infringementEntities entity = new infringementEntities();

            return(new CityModel {
                Id = model.id, Name = model.name, SortOrder = model.SortOrder ?? 0
            });
        }
        public static city MapCityForCreate(CityModel model)
        {
            infringementEntities entity = new infringementEntities();

            var result = new city();

            MapCityForEdit(model, result);
            return(result);
        }
        public IHttpActionResult GetCarMakes()
        {
            var entities = new infringementEntities();

            var infringementTypes = entities.infringementtypes
                                    .OrderBy(x => x.SortOrder)
                                    .ToList();

            return(Ok(ResourceMapper.Map(infringementTypes)));
        }
Example #4
0
        public IHttpActionResult GetBuildings()
        {
            var entities = new infringementEntities();

            var buildings = entities.parking_location
                            .OrderBy(x => x.SortOrder)
                            .ToList();

            return(Ok(ResourceMapper.Map(buildings)));
        }
Example #5
0
        public IHttpActionResult GetCarModels()
        {
            var entities = new infringementEntities();

            var carModels = entities.carmodels
                            .OrderBy(x => x.SortOrder)
                            .ToList();

            return(Ok(ResourceMapper.Map(carModels)));
        }
        public static ModelResource Map(int modelid)
        {
            var           entity = new infringementEntities();
            ModelResource model  = (from m in entity.carmodels
                                    where m.Id == modelid
                                    select new ModelResource {
                Id = m.Id, Name = m.Name
            }).FirstOrDefault();

            return(model);
        }
        public IHttpActionResult GetCities()
        {
            var entities = new infringementEntities();

            //var cities = entities.cities
            //    .OrderBy(x => x.SortOrder)
            //    .ToList();

            var cities = entities.cities.ToList();

            return(Ok(ResourceMapper.Map(cities)));
        }
        public static CarParkBuildingModel MapBuildingForDisplay(parking_location model)
        {
            infringementEntities entity = new infringementEntities();

            return(new CarParkBuildingModel {
                Id = model.Id,
                Name = model.Name,
                SortOrder = model.SortOrder ?? 0,
                Address = model.Address,
                CityId = model.CityId,
                Description = model.Description,
                Latitude = model.Latitude,
                Longitude = model.Longitude
            });
        }
        public IHttpActionResult Put(InfringementRequest request)
        {
            try
            {
                var entity       = new infringementEntities();
                var infringement = entity.infringements.FirstOrDefault(x => x.Number == request.InfringementNumber);

                if (infringement == null)
                {
                    return(NotFound());
                }

                RequestToEntityMapper.Map(request, infringement);
                entity.SaveChanges();
                return(GetByInfringementNumber(infringement.Number));
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }
        }
        public IHttpActionResult GetByInfringementNumber(string infringementNumber)
        {
            try
            {
                var entity       = new infringementEntities();
                var infringement = entity.infringements.FirstOrDefault(x => x.Number == infringementNumber);

                if (infringement == null)
                {
                    return(NotFound());
                }

                var resource = ResourceMapper.Map(infringement);

                return(Ok(resource));
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }
        }
        public IHttpActionResult GetByRego(string rego)
        {
            try
            {
                var entity       = new infringementEntities();
                var infringement = entity.infringements
                                   .OrderByDescending(x => x.Id)
                                   .FirstOrDefault(x => x.Rego == rego & x.StatusId == 1);

                if (infringement == null)
                {
                    return(NotFound());
                }

                var resource = ResourceMapper.Map(infringement);

                return(Ok(resource));
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }
        }
        public JsonResult doesUserNameExist(string Email)
        {
            user lUser = null;

            using (infringementEntities entity = new infringementEntities())
            {
                lUser = (from a in entity.users
                         where a.Email == Email
                         select a).FirstOrDefault();
            }

            if (Session["EditUserObject"] != null)
            {
                user eUser = (user)Session["EditUserObject"];

                if (lUser != null && lUser.Id == eUser.Id)
                {
                    lUser = null;
                }
            }

            return(Json(lUser == null));
        }
        public Task <IEnumerable <FileDesc> > Post(string infringementNumber)
        {
            try
            {
                var folderName = String.Format("uploads/{0}", infringementNumber);
                var path       = HttpContext.Current.Server.MapPath("~/uploads/" + infringementNumber);
                if (!Directory.Exists(path))
                {
                    Directory.CreateDirectory(path);
                }
                var entity = new infringementEntities();

                var infringement = entity.infringements.FirstOrDefault(x => x.Number == infringementNumber);
                var longitude    = (System.Web.HttpContext.Current.Request.Form["longitude"] ?? String.Empty).ToString();
                var latitude     = (System.Web.HttpContext.Current.Request.Form["latitude"] ?? String.Empty).ToString();
                var description  = (System.Web.HttpContext.Current.Request.Form["description"] ?? String.Empty).ToString();

                var rootUrl = Request.RequestUri.AbsoluteUri.Replace(Request.RequestUri.AbsolutePath, String.Empty);
                if (Request.Content.IsMimeMultipartContent())
                {
                    var streamProvider = new CustomMultipartFormDataStreamProvider(path);

                    var task = Request.Content.ReadAsMultipartAsync(streamProvider).ContinueWith <IEnumerable <FileDesc> >(t =>
                    {
                        if (t.IsFaulted || t.IsCanceled)
                        {
                            throw new HttpResponseException(HttpStatusCode.InternalServerError);
                        }

                        var fileInfo = streamProvider.FileData.Select(i =>
                        {
                            var info = new FileInfo(i.LocalFileName);
                            return(new FileDesc(info.Name, rootUrl + "/" + folderName + "/" + info.Name, info.Length / 1024));
                            //return new FileDesc(info.Name,  folderName + "/" + info.Name, info.Length / 1024);
                        });

                        foreach (var info in fileInfo)
                        {
                            entity.infringementpictures.Add(new infringementpicture()
                            {
                                Latitude       = latitude,
                                Longitude      = longitude,
                                Description    = description,
                                InfringementId = infringement.Id,
                                Location       = info.Path
                            });
                        }

                        entity.SaveChanges();

                        return(fileInfo);
                    });

                    return(task);
                }
                else
                {
                    throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotAcceptable,
                                                                           "This request is not properly formatted"));
                }
            }
            catch (Exception ex)
            {
                return(null);
            }
        }
        public IHttpActionResult Post(InfringementRequest request)
        {
            try
            {
                var entity = new infringementEntities();

                user lUser = (from a in entity.users
                              where a.Email == request.LoginId && a.UserPassword == request.Password && a.IsActive == true
                              select a).FirstOrDefault();

                if (lUser != null)
                {
                    if (entity.infringements.FirstOrDefault(x => x.Number == request.InfringementNumber) != null)
                    {
                        //return BadRequest("Infringement already exists");
                        var error = "Infringement already exists with InfringementNumber:" + request.InfringementNumber;
                        return(BadRequest(error));
                    }
                    int infringementCity = entity.parking_location.FirstOrDefault(x => x.Id == request.BuildingId).CityId;

                    var carmodel1 = entity.carmodels.Where(x => x.Name == request.CarModel).FirstOrDefault();


                    infringement dbInfringement = RequestToEntityMapper.Map(request);
                    if (carmodel1 != null)
                    {
                        dbInfringement.ModelId = Convert.ToInt16(carmodel1.Id);
                    }

                    dbInfringement.CityId        = infringementCity;
                    dbInfringement.CreatedBy     = lUser.Id;
                    dbInfringement.CreatedDate   = System.DateTime.Now;
                    dbInfringement.Pay           = false;
                    dbInfringement.GeneratedFrom = 2;
                    entity.infringements.Add(dbInfringement);
                    entity.SaveChanges();

                    return(GetByInfringementNumber(request.InfringementNumber));
                }
                else
                {
                    var error = "Un-Authhorized access.  Please check your User details.";
                    return(Ok(error));
                }
            }

            catch (System.Data.Entity.Validation.DbEntityValidationException dbEx)
            {
                string errormsg = "";
                foreach (var validationErrors in dbEx.EntityValidationErrors)
                {
                    foreach (var validationError in validationErrors.ValidationErrors)
                    {
                        System.Diagnostics.Trace.TraceInformation("Property: {0} Error: {1}", validationError.PropertyName, validationError.ErrorMessage);
                        errormsg += validationError.PropertyName + " : " + validationError.ErrorMessage + ", ";
                    }
                }
                return(Ok(errormsg));
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }
        }
        public ActionResult ContactMail(ContactUsModel model)
        {
            ViewBag.reCAPTCHAClient = System.Configuration.ConfigurationManager.AppSettings["reCAPTCHAClient"];

            _logger.Info("contact us : " + model.CustomerName + " ::  " + model.Subject + " ::  " + model.Email + " ::  " + model.Message);
            ViewBag.Message = model.Message;
            ViewBag.Subject = model.Subject;

            string EncodedResponse = Request.Form["g-Recaptcha-Response"];
            bool   IsCaptchaValid  = (ReCaptchaClass.Validate(EncodedResponse) == "True" ? true : false);

            if (IsCaptchaValid)
            {
                infringementEntities db        = new infringementEntities();
                contactu             contactus = new contactu();

                contactus.SubjectText  = model.Subject;
                contactus.CustomerName = model.CustomerName;
                contactus.Email        = model.Email;
                contactus.SubjectText  = model.Subject;
                contactus.BodyContent  = model.Message;
                contactus.CreatedDate  = DateTime.Now;

                string VisitorsIPAddr = string.Empty;
                if (HttpContext.Request.ServerVariables["HTTP_X_FORWARDED_FOR"] != null)
                {
                    VisitorsIPAddr = HttpContext.Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString();
                }
                else if (HttpContext.Request.UserHostAddress.Length != 0)
                {
                    VisitorsIPAddr = HttpContext.Request.UserHostAddress;
                }
                contactus.ClientIp    = VisitorsIPAddr;
                contactus.BrowserName = Request.Browser.Browser;
                contactus.Status      = 0;

                db.contactus.Add(contactus);
                db.SaveChangesAsync();

                //sending mail
                StringBuilder sb = new StringBuilder();
                sb.Append("<p>The following has been sent from contact us page.</p>");
                sb.Append("<p>Submit Date & Time: " + GetCurrentTime().ToString("dd-MM-yyyy HH:mm") + " </p>");

                sb.Append("<p>Name : " + model.CustomerName + " ");
                sb.Append("<p>Email : " + model.Email + " ");
                sb.Append("<p>Message Type : " + model.Subject + " </p>");
                sb.Append("<p> Infringement Number :" + model.InfringementNumber + " </p>");
                sb.Append("<p> Message :" + model.Message + " </p>");
                //sb.Append("<p>&nbsp;</p>");
                //sb.Append("<p>Thanks</p>");
                //sb.Append("<p>Online Contact us web form -Customer Portal.</p>");

                string emailid = db.emailids.FirstOrDefault(x => x.EmailTitle == "contactus").Email;

                SendMail(emailid, model.Subject, sb.ToString());

                return(View("MailResponse"));
            }
            else
            {
                ModelState.AddModelError("", "Please select valid recaptcha.");
                return(View("Contact", model));
            }
        }
        public async Task <ActionResult> Login(LoginViewModel model, string returnUrl)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            user lUser = null;

            using (infringementEntities entity = new infringementEntities())
            {
                lUser = (from a in entity.users
                         where a.Email == model.Email && a.UserPassword == model.Password
                         select a).FirstOrDefault();
            }

            if (lUser == null)
            {
                ModelState.AddModelError("", "Invalid login attempt.");
                //return HttpNotFound();
            }
            else if (lUser != null && (lUser.IsActive == false || lUser.IsActive == null))
            {
                ModelState.AddModelError("", "In-Active User can not loggin into the application.");
                //return HttpNotFound();
            }
            else
            {
                Session["Authenticated"] = true;
                Session["UserId"]        = lUser.Id;
                Session["UserFirstName"] = lUser.FirstName;
                Session["UserLastName"]  = lUser.LastName;
                Session["UserType"]      = lUser.UserType;

                // Set cookies if user want to save it
                #region Remember Me
                if (model.RememberMe == true)
                {
                    Response.Cookies["IASLoginEmail"].Value   = lUser.Email;
                    Response.Cookies["IASPassword"].Value     = lUser.UserPassword;
                    Response.Cookies["IASLoginEmail"].Expires = DateTime.Now.AddDays(1);
                    Response.Cookies["IASPassword"].Expires   = DateTime.Now.AddDays(1);
                }
                else
                {
                    Response.Cookies["IASLoginEmail"].Expires = DateTime.Now.AddDays(-1);
                    Response.Cookies["IASPassword"].Expires   = DateTime.Now.AddDays(-1);
                }
                #endregion

                return(Redirect(Url.Content("/Infringements/Index")));
            }


            //// This doesn't count login failures towards account lockout
            //// To enable password failures to trigger account lockout, change to shouldLockout: true
            ////var result = await SignInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, shouldLockout: false);
            //switch (result)
            //{
            //    case SignInStatus.Success:
            //        return RedirectToLocal(returnUrl);
            //    case SignInStatus.LockedOut:
            //        return View("Lockout");
            //    case SignInStatus.RequiresVerification:
            //        return RedirectToAction("SendCode", new { ReturnUrl = returnUrl, RememberMe = model.RememberMe });
            //    case SignInStatus.Failure:
            //    default:
            //        ModelState.AddModelError("", "Invalid login attempt.");
            //        return View(model);
            //}

            return(View(model));
        }