Esempio n. 1
0
        // GET: Request/Edit/5
        public ActionResult Edit(int?id)
        {
            try
            {
                if (id == null)
                {
                    return(RedirectToAction("Index"));
                }

                souvenirID_tmp = id;
                Request request = db.requests.Find(id);

                if (request == null)
                {
                    return(HttpNotFound());
                }
                string userName = Session["userName"].ToString();
                if (userName != request.userName)
                {
                    return(RedirectToAction("Index", "Request"));
                }

                RequestEditView requestEdit = new RequestEditView();
                requestEdit.amount          = request.amount;
                requestEdit.status          = request.status;
                requestEdit.souvenirName    = request.souvenir.souvenirName;
                requestEdit.countrySouv     = request.souvenir.countrySouv;
                requestEdit.price           = request.souvenir.souvenirInfo.price.ToString().Replace(".", ",");
                requestEdit.currency        = request.souvenir.souvenirInfo.currency;
                requestEdit.descriptionSouv = request.souvenir.souvenirInfo.descriptionSouv;
                requestEdit.reward          = request.reward;
                return(View(requestEdit));
            }

            catch (Exception)
            {
                return(RedirectToAction("Login", "Customer"));
            }
        }
Esempio n. 2
0
        public ActionResult Edit(RequestEditView model, int id)
        {
            Boolean isValid = true;

            ViewBag.ErrorMessageSouvenirName = null;
            ViewBag.ErrorMessageCountry      = null;
            ViewBag.ErrorMessageAmount       = null;
            ViewBag.ErrorMessagePrice        = null;
            ViewBag.ErrorMessageCurrency     = null;
            ViewBag.ErrorMessageDescription  = null;
            ViewBag.ErrorMessageStatus       = null;


            if (model.souvenirName == null || model.souvenirName.Length < 3 || model.souvenirName.Length > 30)
            {
                ViewBag.ErrorMessageSouvenirName = "The name of your souvenir should have between 3 and 30 characters.";
                isValid = false;
            }
            if (model.countrySouv == null)
            {
                ViewBag.ErrorMessageCountry = "Please select a country.";
                isValid = false;
            }
            if (model.amount < 1 || model.amount > 1000)
            {
                ViewBag.ErrorMessageAmount = "Please enter a quantity between 1 and 1000.";
                isValid = false;
            }
            string tmp = model.price.Replace(",", "");

            tmp = tmp.Replace(".", "");
            if (model.price == null || model.price.Length > 10)
            {
                ViewBag.ErrorMessagePrice = "Please enter a price under 10 digits.";
                isValid = false;
            }
            if ((model.price.Length - tmp.Length) > 1)
            {
                ViewBag.ErrorMessagePrice = "Maximum one ',' or '.' !";
                isValid = false;
            }
            if (model.currency == null)
            {
                ViewBag.ErrorMessageCurrency = "Please select a currency.";
                isValid = false;
            }
            if (model.descriptionSouv == null || model.descriptionSouv.Length > 300 || model.descriptionSouv.Length < 5)
            {
                ViewBag.ErrorMessageDescription = "Please enter a description of your souvenir, it should be more than 5 and less than 300 characters.";
                isValid = false;
            }
            if (model.status == null)
            {
                ViewBag.ErrorMessageStatus = "Please select a status.";
                isValid = false;
            }

            if (isValid == true)
            {
                SouvenirInfo souvenirInfo = db.souvenirInfos.Find(souvenirID_tmp);
                if (model.price.Contains(","))
                {
                    model.price = model.price.Replace(",", ".");
                }
                NumberStyles style   = NumberStyles.AllowDecimalPoint;
                CultureInfo  culture = CultureInfo.CreateSpecificCulture("en-US");
                double       d;
                double.TryParse(model.price, style, culture, out d);
                souvenirInfo.price           = Math.Round(d, 2);
                souvenirInfo.currency        = model.currency;
                souvenirInfo.descriptionSouv = model.descriptionSouv;
                db.Entry(souvenirInfo).CurrentValues.SetValues(souvenirInfo);
                db.SaveChanges();

                Souvenir souvenir = db.souvenirs.Find(souvenirID_tmp);
                souvenir.souvenirName = model.souvenirName;
                souvenir.countrySouv  = model.countrySouv;
                db.Entry(souvenir).CurrentValues.SetValues(souvenir);
                db.SaveChanges();

                Request request = db.requests.Find(souvenirID_tmp);
                request.amount = model.amount;
                request.status = model.status;
                request.reward = (double)(request.amount * request.souvenir.souvenirInfo.price * rewardpercent) / 100;
                request.reward = Math.Round(request.reward, 2);
                db.Entry(request).CurrentValues.SetValues(request);
                db.SaveChanges();

                souvenirID_tmp = null;
                return(RedirectToAction("MyOwnRequests"));
            }
            else
            {
                return(View("Edit", model));
            }
        }
Esempio n. 3
0
        private void mi_File_Request_Click(object sender, RoutedEventArgs e)
        {
            RequestEditView v = new RequestEditView();

            v.ShowDialog();
        }