/// <summary> /// Takes an id and deletes the corresponding CompositeSymbol. /// Returns you to the Index-method of the CompositeSymbolController /// together with a message of error or success. /// </summary> /// <param name="id"></param> /// <returns>Index-view</returns> public ActionResult Delete(int id) { if (Session["logged_in"] == null) return RedirectToAction("Index", "Index"); CompositeSymbolBLL comp = new CompositeSymbolBLL(); CompositeSymbol toDelete = comp.GetExaxtComositeSymbolByID(id); var name = toDelete.compName; if (toDelete != null) { var ok = comp.DeleteCompositeSymbol(toDelete); if (ok) { TempData["msg"] = "Composite Symbol '" + name + "' was successfully deleted."; } else { TempData["msg"] = "Could not delete symbol '" + name + "'."; } } else { TempData["msg"] = "Composite Symbol with id: '" + id + "' was not found."; } return RedirectToAction("Index"); }
/// <summary> /// Stores all Symbols in ViewData["symbols"], /// all symbols with symboltype other than normal in ViewDate["types"], /// and all CompositeSymbols in ViewData["comp"], /// and returns the index-view of WriteController. /// </summary> /// <returns>~/Write/Inex.cshtml</returns> public ActionResult Index() { SymbolBLL symbols = new SymbolBLL(); ViewData["symbols"] = symbols.GetAllSymbols(); SymbolTypeBLL types = new SymbolTypeBLL(); ViewData["types"] = types.GetAllNonStandard(); CompositeSymbolBLL comp = new CompositeSymbolBLL(); ViewData["comp"] = comp.GetAll(); CompositeOfBLL compOf = new CompositeOfBLL(); ViewData["compOf"] = compOf.getAllRelations(); return View(); }
/// <summary> /// Gets the id of the CompositeSymbol you want to edit, /// the symbols it is made of, and a list of all Symbols, /// saves them in ViewData and then returns the Edit-view. /// </summary> /// <param name="id"></param> /// <returns>Edit-view</returns> public ActionResult Edit(int id) { if (Session["logged_in"] == null) return RedirectToAction("Index", "Index"); CompositeSymbolBLL comp = new CompositeSymbolBLL(); CompositeSymbol find = comp.GetExaxtComositeSymbolByID(id); CompositeOfBLL compOf = new CompositeOfBLL(); SymbolBLL symb = new SymbolBLL(); List<Symbol> symbols = compOf.GetComponentsOf(find); SymbolTypeBLL types = new SymbolTypeBLL(); ViewData["comp"] = find; ViewData["symbList"] = symbols; ViewData["otherSymbols"] = symb.GetAllSymbols(); ViewData["Types"] = types.GetAllNonStandard(); return View(); }
public ActionResult ConvertToComposite(Int32[] isPartOf, int rawId) { if (Session["logged_in"] == null) return RedirectToAction("Index", "Index"); RawSymbolImportBLL raw = new RawSymbolImportBLL(); SymbolBLL symbols = new SymbolBLL(); CompositeSymbolBLL comp = new CompositeSymbolBLL(); RawSymbolImport rawBecomingComp = raw.GetExact(rawId); List<Symbol> partOf = new List<Symbol>(); foreach (Int32 part in isPartOf) { var temp = symbols.GetExactByID(part); if (temp != null) { partOf.Add(temp); } } CompositeSymbol compOfRaw = new CompositeSymbol() { compId = rawBecomingComp.rawId, compName = rawBecomingComp.rawName, compJpeg = rawBecomingComp.rawJpeg }; var ok = comp.Insert(compOfRaw, partOf); if (ok != -1) { TempData["msg"] = "Raw symbol '" + rawBecomingComp.rawName + "' is now a composite symbol"; var successfullyDeleted = raw.DeleteExact(rawId); if(!successfullyDeleted) { TempData["msg"] += ", but was not deleted from raw list."; } } return RedirectToAction("Index", "CompositeSymbol"); }
public ActionResult Suggestions(SuggestionsModel myModel) { var symbolId = myModel.symbolId; var currentSuggestions = myModel.currentSuggestions; var first = myModel.first; System.Diagnostics.Debug.WriteLine(first + " AND ID IS " + symbolId + " SIR"); var listOfComp = new List<CompositeSymbol>(); if(first == "true") { CompositeSymbolBLL comp = new CompositeSymbolBLL(); listOfComp = comp.GetAll(); System.Diagnostics.Debug.WriteLine("FILLED LIST WITH ALL COMP SYMBOLS FROM BLL SIR"); } else { foreach(CompositeSymbol co in currentSuggestions) { CompositeSymbolBLL comp = new CompositeSymbolBLL(); listOfComp.Add(comp.GetExaxtComositeSymbolByID(co.compId)); } //listOfComp = currentSuggestions; System.Diagnostics.Debug.WriteLine("NUMBER IS: " + currentSuggestions.Count + ", FILLING LIST WITH LIST IN PARAMETER SIR"); } if(listOfComp.Count == 0) { System.Diagnostics.Debug.WriteLine("VERY EMPTY THIS LIST SIR"); } else { System.Diagnostics.Debug.WriteLine("LIST HAS VALUES SIR"); } CompositeOfBLL compOf = new CompositeOfBLL(); CompositeScoreBLL score = new CompositeScoreBLL(); List<CompositeSymbol> suggestions = new List<CompositeSymbol>(); var lastScore = 0; foreach(CompositeSymbol c in listOfComp) { if (c != null) System.Diagnostics.Debug.WriteLine("COMP SYMBOL DOES EXCIST SIR"); else System.Diagnostics.Debug.WriteLine("COMP SYMBOL DOES NOT EXIST SIR"); var temp = compOf.GetComponentsOf(c); foreach(Symbol s in temp) { if(s.symId == symbolId) { if(score.GetScoreFor(c.compId) >= lastScore) { suggestions.Insert(0, c); lastScore = score.GetScoreFor(c.compId); } else suggestions.Add(c); } } } return Json(suggestions); }
public ActionResult Edit(Int32[] isPartOf, int compId) { if (Session["logged_in"] == null) return RedirectToAction("Index", "Index"); CompositeSymbolBLL comp = new CompositeSymbolBLL(); SymbolBLL symbols = new SymbolBLL(); CompositeSymbol editedComp = comp.GetExaxtComositeSymbolByID(compId); List<Symbol> partOf = new List<Symbol>(); foreach(Int32 part in isPartOf) { var temp = symbols.GetExactByID(part); if(temp != null) { partOf.Add(temp); } } CompositeOfBLL compOf = new CompositeOfBLL(); var ok = compOf.DeleteByCompositeSymbol(editedComp); if(ok) { ok = compOf.SetCompositeOfSymbol(editedComp, partOf); if(ok) { TempData["msg"] = "Composite Symbol '" + editedComp.compName + "' was successfully edited."; } else { TempData["msg"] = "Error when editing."; } } return RedirectToAction("Index"); }
/// <summary> /// Generates a list of all the CompositeSymbols and /// saves it in ViewData, and then returns the Index-view. /// It also sends an error message to the view if it exists. /// </summary> /// <param></param> /// <returns>Index-view</returns> public ActionResult Index() { CompositeSymbolBLL comp = new CompositeSymbolBLL(); ViewData["comp"] = comp.GetAll(); if (TempData["msg"] != null) { ViewBag.Message = TempData["msg"].ToString(); } return View(); }