public TrdViewModel CreateTrd(TrdViewModel trd, string clientIdString)
        {
            var clientId = int.Parse(clientIdString);
            if (trd == null)
            {
                return trd;
            }

            var newTrd = new Trd
            {
                Decoder = trd.Decoder,
                Sim = trd.Sim,
                Cas = trd.Cas,
                Cam = trd.Cam,
                ClientId = clientId,
                IsVisible = trd.IsVisible
            };

            this.Data.Trds.Add(newTrd);
            this.Data.SaveChanges();

            trd.Id = newTrd.Id;

            return trd;
        }
        public TrdViewModel DestroyTrd(TrdViewModel trd)
        {
            this.Data.Trds.Delete(trd.Id);
            this.Data.SaveChanges();

            return trd;
        }
        public JsonResult DestroyTrd([DataSourceRequest] DataSourceRequest request, TrdViewModel trd)
        {
            var deletedTrd = this.trds.DestroyTrd(trd);

            var loggedUserId = this.User.Identity.GetUserId();
            Base.CreateActivity(ActivityType.Delete, deletedTrd.Id.ToString(), ActivityTargetType.Trd, loggedUserId);

            return Json(new[] { trd }, JsonRequestBehavior.AllowGet);
        }
        public JsonResult CreateTrd([DataSourceRequest]  DataSourceRequest request, TrdViewModel trd, string clientIdString)
        {
            if (trd == null || !ModelState.IsValid)
            {
                return Json(new[] { trd }.ToDataSourceResult(request, ModelState), JsonRequestBehavior.AllowGet);
            }

            var createdTrd = this.trds.CreateTrd(trd, clientIdString);

            var loggedUserId = this.User.Identity.GetUserId();
            Base.CreateActivity(ActivityType.Create, createdTrd.Id.ToString(), ActivityTargetType.Trd, loggedUserId);

            trd.Id = createdTrd.Id;

            return Json(new[] { trd }.ToDataSourceResult(request, ModelState), JsonRequestBehavior.AllowGet);
        }
        public TrdViewModel UpdateTrd(TrdViewModel trd)
        {
            var trdFromDb = this.Data.Trds
                .All()
              .FirstOrDefault(t => t.Id == trd.Id);

            trdFromDb.Decoder = trd.Decoder;
            trdFromDb.Sim = trd.Sim;
            trdFromDb.Cas = trd.Cas;
            trdFromDb.Cam = trd.Cam;
            trdFromDb.IsVisible = trd.IsVisible;

            this.Data.SaveChanges();

            return trd;
        }