public async Task <IActionResult> Create([Bind("Title,Message,ContactType,Img")] ContactApplication contactApplication)
        {
            if (ModelState.IsValid)
            {
                // Init new Application:
                contactApplication.UserID     = (int)HttpContext.Session.GetInt32("UserID");
                contactApplication.CreateDate = DateTime.Today;
                contactApplication.Status     = Config.TransactionStatus.Open;

                if (contactApplication.Img != null)
                {
                    _context.Add(contactApplication);
                    await _context.SaveChangesAsync(); // Let this contact application get ID from SQL server

                    contactApplication.ImgPath = Image.Save(contactApplication.UserID, contactApplication.Img, getLastContactAppRegisteredID(), "ContactApplication");

                    _context.Update(contactApplication);
                    await _context.SaveChangesAsync(); // Update image path to this contact app ID
                }
                else // (ID is not needed yet because we are not saving an image)
                {
                    contactApplication.ImgPath = "No Image Attached";

                    _context.Add(contactApplication);
                    await _context.SaveChangesAsync(); // let this contact application get ID from SQL server
                }

                return(RedirectToAction(nameof(Index)));
            }
            return(View(contactApplication));
        }
        public async Task <IActionResult> Create([Bind("UserID,PropertyID,PropertyTaxContractImg,ImgPath")] PropertyTaxTransaction propertyTax)
        {
            if (ModelState.IsValid)
            {
                propertyTax.UserID = (int)HttpContext.Session.GetInt32("UserID");

                string ImgPathAfterSave = Image.Save(propertyTax.UserID, propertyTax.PropertyTaxContractImg, propertyTax.PropertyID, "PropertyTax");
                if (ImgPathAfterSave == null) // Another file with same name is already exist - "UserID-WaterMeterID" has to be unique
                {
                    ModelState.AddModelError("", "Another transaction with the same User ID Water Meter ID is already exist.");
                    return(View());
                }

                propertyTax.Status = Config.TransactionStatus.Open; // Init new transaction status

                propertyTax.ImgPath = ImgPathAfterSave;
                _context.Add(propertyTax);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }

            ViewData["UserID"] = new SelectList(_context.User, "UserID", "UserID", propertyTax.UserID);
            return(View(propertyTax));
        }
Exemple #3
0
        public async Task <IActionResult> Create([Bind("UserID,ElectricityMeterLastRead,ElectricityMeterID,ElectricityMeterImg,ImgPath")] ElectricityTransaction electricityTransaction)
        {
            if (ModelState.IsValid)
            {
                electricityTransaction.UserID = (int)HttpContext.Session.GetInt32("UserID");

                string ImgPathAfterSave = Image.Save(electricityTransaction.UserID, electricityTransaction.ElectricityMeterImg, electricityTransaction.ElectricityMeterID, "Electricity");
                if (ImgPathAfterSave == null) // Another file with same name is already exist - "UserID-ElectricityMeterID" has to be unique
                {
                    ModelState.AddModelError("", "Another transaction with the same User ID Water Meter ID is already exist.");
                    return(View());
                }

                electricityTransaction.Status = Config.TransactionStatus.Open; // Init new transaction status

                electricityTransaction.ImgPath = ImgPathAfterSave;
                _context.Add(electricityTransaction);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }

            ViewData["UserID"] = new SelectList(_context.User, "UserID", "UserID", electricityTransaction.UserID);
            return(View(electricityTransaction));
        }
Exemple #4
0
        public async Task <IActionResult> Create([Bind("UserID,FirstName,LastName,Email,EnteranceDate,PropertyCity,PropertyStreet,PropertyStreetNumber,ApartmentNumber,IsAdmin,UserName,Password")] User user)
        {
            if (ModelState.IsValid)
            {
                _context.Add(user);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(user));
        }
Exemple #5
0
        public async Task <IActionResult> Create([Bind("Id,Name,Category,Description,Rating")] Project project)
        {
            if (ModelState.IsValid)
            {
                _context.Add(project);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(project));
        }
        public async Task <IActionResult> Create([Bind("UserID,WaterMeterLastReadDate,WaterMeterID,ImgPath")] WaterTransaction waterTransaction)
        {
            if (ModelState.IsValid)
            {
                _context.Add(waterTransaction);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["UserID"] = new SelectList(_context.User, "UserID", "UserID", waterTransaction.UserID);
            return(View(waterTransaction));
        }
Exemple #7
0
        public async Task <IActionResult> Create([Bind("ID")] ViewModel viewModel)
        {
            var NotAdminRedirection = ValidateAdmin(this.HttpContext);

            if (NotAdminRedirection != null)
            {
                return(NotAdminRedirection); // Redirect to Home/Index
            }

            if (ModelState.IsValid)
            {
                _context.Add(viewModel);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(viewModel));
        }
Exemple #8
0
        public async Task <IActionResult> Create([Bind("UserID,FirstName,LastName,Email,EnteranceDate,PropertyCity,PropertyStreet,PropertyStreetNumber,ApartmentNumber,IsAdmin,UserName,Password")] User user)
        {
            if (ModelState.IsValid)
            {
                var objUser = await _context.User.Where(u => u.Email.Equals(user.Email) || u.UserName.Equals(user.UserName)).ToListAsync();

                if (objUser.Count == 0)
                {
                    user.IsAdmin = false;
                    _context.Add(user);
                    await _context.SaveChangesAsync();

                    return(RedirectToAction("Login"));
                }
                else
                {
                    ModelState.AddModelError("", "This Email address / username is already taken");
                }
            }

            return(View(user));
        }