Esempio n. 1
0
        public IActionResult EditTranslation(TranslationEditModel model)
        {
            model.Update();
            if (ModelState.IsValid)
            {
                using (var uow = _localizationDataService.StartUnitOfWork())
                {
                    var existing = uow.TranslationRepository.Get(model.Id);
                    if (existing == null)
                    {
                        return(RedirectToAction(nameof(Index)));
                    }

                    var resource = uow.ResourceRepository.Get(existing.ResourceId);
                    resource.Author   = User.GetDisplayName();
                    resource.FromCode = false;
                    uow.ResourceRepository.Update(resource);

                    existing.Value = model.Value;
                    uow.TranslationRepository.Update(existing);

                    uow.Commit();
                    model.UpdateSuccess();
                    new ClearCache.Command().Execute();
                }
            }

            return(View(model));
        }
        public async Task <JsonResult> EditTranslation(TranslationEditModel vm)
        {
            Translation t = null;

            try
            {
                t = await _translationService.EditTranslationAsync(vm.Id, vm.TranslatedValue);

                if (null == t)
                {
                    return(Json(new TranslationResponse(false, AppResources.TranslationNotFound)));
                }
            }
            catch (Exception ex)
            {
                Trace.TraceError(ex.ToString());
                return(Json(new TranslationResponse(false, ex.ToString())));
            }

            return(Json(new TranslationResponse(true, AppResources.TranslationUpdatedSuccessfully, t.LastUpdated, t.LastUpdatedBy, t.OriginalResxValueChangedSinceTranslation)));
        }