public ActionResult Add(PeripheralDevice model)
 {
     if (ModelState.IsValid)
     {
         try
         {
             peripheralDeviceRepository.AddObject(model);
             return RedirectToAction("Index");
         }
         catch (DbUpdateException ex)
         {
             throw new DbUpdateException("Wystąpił błąd podczas dodawania urządznia peryferyjnego. Podana nazwa istnieje w bazie. Proszę podać inną nazwę.", ex.InnerException);
         }
         catch (Exception ex)
         {
             throw new Exception("Wystąpił błąd podczas dodawania urządzenia peryferyjnego. Proszę o kontakt z administratorem. Error message: " + ex.Message);
         }
     }
     else
     {
         if (Request.IsAjaxRequest())
         {
             return PartialView("PeripheralDevice/_PeripheralDeviceAdd", model);
         }
         return View(model);
     }
 }
 public ActionResult Add()
 {
     PeripheralDevice model = new PeripheralDevice();
     if (Request.IsAjaxRequest())
     {
         return PartialView("PeripheralDevice/_PeripheralDeviceAdd", model);
     }
     return View(model);
 }
        private void FixupPeripheralDevice(PeripheralDevice previousValue)
        {
            if (previousValue != null && previousValue.Devices.Contains(this))
            {
                previousValue.Devices.Remove(this);
            }

            if (PeripheralDevice != null)
            {
                if (!PeripheralDevice.Devices.Contains(this))
                {
                    PeripheralDevice.Devices.Add(this);
                }
                if (id_peripheral_device != PeripheralDevice.id)
                {
                    id_peripheral_device = PeripheralDevice.id;
                }
            }
        }
 public ActionResult Edit(PeripheralDevice model)
 {
     if(ModelState.IsValid)
     {
         try
         {
             PeripheralDevice device = peripheralDeviceRepository.Repository.FirstOrDefault(x => x.id == model.id);
             device.name = model.name;
             peripheralDeviceRepository.EditObject(device);
             return RedirectToAction("Index");
         }
         catch (DbUpdateException ex)
         {
             throw new DbUpdateException("Wystąpił błąd podczas edytowania urządzenia peryferyjnego. Pole nazwa istnieje w bazie danych. Proszę podać inną nazwę.", ex.InnerException);
         }
         catch (Exception ex)
         {
             throw new Exception("Nie udało się edytować urządzenia peryferyjnego. Proszę skontaktować się z administratorem. " + ex.InnerException);
         }
     }
     else
     {
         if (Request.IsAjaxRequest())
         {
             return PartialView("PeripheralDevice/_PeripheralDeviceEdit", model);
         }
         return View(model);
     }
 }
        public ActionResult Delete(DeleteObjectById model)
        {
            try
            {
                PeripheralDevice device = new PeripheralDevice() { id = model.Id };
                peripheralDeviceRepository.DeleteObject(device);
                return RedirectToAction("Index");
            }
            catch (DbUpdateException ex)
            {
                throw new DbUpdateException("Wystąpił błąd podczas usuwania urządznia peryferyjnego. Aby usunąć urządzenie peryferyjne należy edytować urządzenia tego typu.", ex.InnerException);
            }
            catch (Exception ex)
            {
                throw new Exception("Wystąpił błąd podczas usuwania urządzenia peryferyjnego. Proszę skontaktować się z administratorem", ex.InnerException);

            }
        }