//[System.Web.Http.HttpPost] public HttpResponseMessage Post([FromBody] VocabularyWord model) { if (UserID == null) { return(ResponseError(HttpStatusCode.Forbidden, "Log in required.")); } Sql sql = new Sql("WHERE OwnerID=@0", UserID); int listID = 0; if (model.list != null && int.TryParse(model.list, out listID)) { sql.Append("AND ID=@0", listID); } sql.Append("ORDER BY ID DESC"); VocabularyList vc = VocabularyList.FirstOrDefault(sql); if (vc == null) { return(ResponseError(HttpStatusCode.PreconditionFailed, "No vocabulary list found.")); } try { SuomenkieliRepository.AddVocabularyWord(model.word, vc.ID, UserID); } catch (Exception ex) { return(ResponseError(HttpStatusCode.InternalServerError, ex.Message)); } int wordID = SuomenkieliRepository.GetWordID(model.word).GetValueOrDefault(); // This should not be null. FullWord fWord = SuomenkieliRepository.GetFullWord(wordID); string firstDef = (fWord.Definitions.Count > 0) ? fWord.Definitions.First()._Definition : ""; ResponseWord rWord = new ResponseWord() { id = fWord.ID, word = fWord._Word, definition = firstDef }; var resp = Request.CreateResponse <ResponseWord>(HttpStatusCode.OK, rWord); return(resp); //return ResponseOK(rWord); }
private ExploreVM UpdateConceptSet(ExploreVM conceptSet) { conceptSet.originalSearch = conceptSet.search; searchLogger.Info("search: {0} user: {1}", conceptSet.search, User.Identity.Name); conceptSet.isAdmin = User.IsInRole("Administrator"); List <FullWord> results = SuomenkieliRepository.GetWordsByExplore(conceptSet); conceptSet.resultList = results; return(conceptSet); }
private IEnumerable <VocabularyListVM> GetListOfVocabularyListVM(int[] ids) { IEnumerable <VocabularyList> vLists = VocabularyList.Fetch("WHERE OwnerID=@0 AND ID IN @1", UserID, ids); List <VocabularyListVM> vmLists = new List <VocabularyListVM>(); foreach (VocabularyList vList in vLists) { VocabularyListVM vmList = new VocabularyListVM(vList); vmList.WordList = SuomenkieliRepository.GetFullWordListByListID(vmList.ID); vmLists.Add(vmList); } return(vmLists); }
private VocabularyListVM GetVocabularyListVW(int id) { VocabularyList vl = VocabularyList.First("WHERE id=@0 AND OwnerID=@1", id, UserID); if (vl == null) { return(null); } VocabularyListVM vlm = new VocabularyListVM(vl); //List<VocabularyList_Word> vlWords = VocabularyList_Word.Fetch("WHERE VocabularyListID = @0 ORDER BY Rank", id); //int[] wordIDs = vlWords.Select(t => t.WordID).ToArray(); List <FullWord> vlFW = SuomenkieliRepository.GetFullWordListByListID(vlm.ID); vlm.WordList = vlFW; return(vlm); }
public HttpResponseMessage Delete([FromBody] VocabularyWord model) { if (UserID == null) { return(ResponseError(HttpStatusCode.Forbidden, "Log in required.")); } Sql sql = new Sql("WHERE OwnerID=@0", UserID); int listID = 0; if (model.list != null && int.TryParse(model.list, out listID)) { sql.Append("AND ID=@0", listID); } sql.Append("ORDER BY ID DESC"); VocabularyList vc = VocabularyList.FirstOrDefault(sql); if (vc == null) { return(ResponseError(HttpStatusCode.PreconditionFailed, "No vocabulary list found.")); } try { SuomenkieliRepository.RemoveVocabularyWord(model.word, vc.ID, UserID); } catch (Exception ex) { return(ResponseError(HttpStatusCode.InternalServerError, ex.Message)); } return(ResponseOK(model.word)); }
public void Put([FromBody] ListOrder value) { Debug.Write(value); SuomenkieliRepository.OrderVocabularyList(value.list, value.order); }