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

            if (Kind != null)
            {
                if (!Kind.FixedAssets.Contains(this))
                {
                    Kind.FixedAssets.Add(this);
                }
                if (id_kind != Kind.id)
                {
                    id_kind = Kind.id;
                }
            }
            else if (!_settingFK)
            {
                id_kind = null;
            }
        }
        private void FixupKind(Kind previousValue)
        {
            if (previousValue != null && previousValue.Licences.Contains(this))
            {
                previousValue.Licences.Remove(this);
            }

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

            }
        }