示例#1
0
        //[HttpGet]
        ////[Authorize]
        //public ActionResult Add()
        //{
        //    var editWordViewModel = new WordEditViewModel()
        //    {
        //        Languages = _wordsService.GetLanguaches().ToList(),
        //        Statuses = _wordsService.GetWordStatuses().ToList(),
        //        WordTypes = _wordsService.GetWordTypes().ToList(),
        //        WordSets = _wordsService.GetUserWordsSets(this.GetAppUserId()),
        //    };

        //    return PartialView("_Add", editWordViewModel);
        //}

        //[Authorize]
        //public ActionResult ListUserWordsPartial()
        //{
        //    UserWordsListViewModel viewModel = new UserWordsListViewModel(UserWordsQuery);
        //    return PartialView("_List", viewModel);
        //}

        //[HttpPost]
        //[Authorize]
        //public ActionResult Add(WordEditViewModel editWordViewModel)
        //{
        //    if(!ModelState.IsValid)
        //        return new HttpStatusCodeResult(HttpStatusCode.BadRequest, this.ModelState.CollectErrors());

        //    UserWordViewModel newUserWordViewModel = null;

        //    try
        //    {
        //        UserWord model = editWordViewModel.ToNewUserWord();

        //        UserWord newUserWord = _wordsService.Add(model);

        //        newUserWord = _wordsService.GetUserWords().Where(uw => uw.Id == newUserWord.Id)
        //            .Include(w => w.Status)
        //            .Include(w => w.Word.Language)
        //            .Include(w => w.Word.WordType)
        //            .First();

        //        newUserWordViewModel = new UserWordViewModel(newUserWord);
        //    }
        //    catch(Exception ex)
        //    {
        //        return new HttpStatusCodeResult(HttpStatusCode.BadRequest, ex.CollectMessages());
        //    }
        //    return PartialView("_ListItem", newUserWordViewModel);
        //}

        //[Authorize]
        //public ActionResult Edit(int id)
        //{

        //    _wordsService.GetUserWords().Where(uw => uw.Id == id).FirstOrDefault(); ;

        //    var editWordViewModel = new WordEditViewModel()
        //    {
        //        Languages = _wordsService.GetLanguaches().ToList(),
        //        Statuses = _wordsService.GetWordStatuses().ToList(),
        //        WordTypes = _wordsService.GetWordTypes().ToList(),
        //        WordSets = _wordsService.GetUserWordsSets(this.GetAppUserId()),
        //    };

        //    return PartialView("_Add", editWordViewModel);
        //}



        ////[Authorize]
        ////public ActionResult Edit(WordEditViewModel id)
        ////{

        ////}

        //[Authorize]
        //public ActionResult DeleteUserWord(int id)
        //{
        //    try
        //    {
        //        _wordsService.Delete(id);
        //    }
        //    catch(Exception ex)
        //    {
        //        return new HttpStatusCodeResult(HttpStatusCode.BadRequest, ex.CollectMessages());
        //    }

        //    return new HttpStatusCodeResult(HttpStatusCode.OK);
        //}

        #endregion

        public ActionResult AddWordExt(string word, string userKey, string defaultSetName, int?defaultStatusId)
        {
            if (string.IsNullOrWhiteSpace(userKey))
            {
                throw new Exception("word o userKey not set");
            }

            word = word.Trim();
            var vm = new AddWordExtViewModel()
            {
                UserKey              = userKey,
                Sets                 = _wordsService.GetUserWordsSets(userKey).Select(s => s.Name).ToList(),
                WordText             = word,
                Languages            = _PolyglotListsService.GetLanguaches().ToSeletListItems(l => l.Name, l => l.Id, 1),
                Statuses             = _PolyglotListsService.GetWordStatuses().ToSeletListItems(s => s.Name, s => s.Id, 1),
                UrlPost              = Request.Url.GetLeftPart(UriPartial.Path),
                Status_Id            = defaultStatusId ?? 1,
                TranslateLanguage_Id = 2//todo magic to extension params
            };
            var existWordInfo = _wordsService.GetWordTranslates(word, userKey);

            if (existWordInfo != null)
            {
                vm.ExistWordInfo = "Слово есть вашем словаре: " + existWordInfo;
            }

            vm.SetName = !string.IsNullOrWhiteSpace(defaultSetName) ? defaultSetName : vm.Sets.First();

            return(View(vm));
        }
示例#2
0
        public ActionResult AddWordExt(AddWordExtViewModel userWordVM)
        {
            Response.Headers.Add("Access-Control-Allow-Origin", "*");
            try
            {
                //throw new Exception("errr",new Exception("inner er"));
                UserWord userWord = _mapper.Map <UserWord>(userWordVM);

                _wordsService.Add(userWord, userWordVM.Example, userWordVM.TranslateLanguage_Id, userWordVM.Translates, userWordVM.UserKey);
            }
            catch (Exception ex)
            {
                //return Json(ex.CollectMessages());
                //return new HttpStatusCodeResult(HttpStatusCode.BadRequest, ex.CollectMessages());
                //Response.StatusCode = (int)HttpStatusCode.BadRequest;
                //return Json(ex.CollectMessages());
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest, ex.ToString()));
            }
            return(Json("Ok"));
        }