// // GET: /Component/ public ActionResult Index(int? componentid) { var myComponentDataUtil = new ComponentDataUtil(); var myComponents = new Components(); var selectedComponent = new Component(); var sortedList = new List<Component>(); foreach (var component in myComponentDataUtil.GetAllComponents()) { myComponents._components.Add(component); } foreach (var component in myComponents._components) { if (component.ComponentID == componentid) selectedComponent = component; } foreach (var component in myComponents._components) { if (selectedComponent.ComponentName==component.ComponentName) sortedList.Add(component); } if (sortedList.Count > 0) { ViewData["AvailableQuantity"] = myComponents.GetAvailableQuantity(sortedList[0].ComponentName); return View(sortedList[0]); } return View(); }
// // GET: /Component/ public ActionResult Index(int? componentid) { var myComponentDataUtil = new ComponentDataUtil(); var myComponents = new Components(); var selectedComponent = new Component(); var userCommentsList = new List<MvcHtmlString>(); var sortedList = new List<Component>(); var emptylist = new List<MvcHtmlString>(); LoanDataUtil ldu = new LoanDataUtil(); myComponents._LoanInformations = ldu.GetAllLoanInformation(); foreach (var component in myComponentDataUtil.GetAllComponents()) { myComponents._components.Add(component); } foreach (var component in myComponents._components) { if (component.ComponentID == componentid) selectedComponent = component; } foreach (var component in myComponents._components) { if (selectedComponent.ComponentName==component.ComponentName) sortedList.Add(component); } foreach (var component in sortedList) { if (!String.IsNullOrEmpty(component.UserComment)) userCommentsList.Add(MvcHtmlString.Create(HttpUtility.HtmlEncode(component.UserComment + "\n\n Skrevet omkring komponent nummer: " + component.ComponentNumber).Replace("\n", "<br />"))); } if (userCommentsList.Count < 1) { emptylist.Add(MvcHtmlString.Create(HttpUtility.HtmlEncode("Ingen kommentarer fundet"))); ViewData["UserComments"] = emptylist; } else { ViewData["UserComments"] = userCommentsList.Distinct().ToList(); } if (sortedList.Count > 0) { ViewData["AvailableQuantity"] = myComponents.GetAvailableQuantity(sortedList[0].ComponentName); return View(sortedList[0]); } ViewData["AvailableQuantity"] = 0; return View(); }
// // GET: /Home/ public ActionResult Index(string searchString, string category) { var mySearcher = new Searcher(); var myComponentDataUtil = new ComponentDataUtil(); var myComponentList = new List<Component>(); var myComponents = new Components(); if (!String.IsNullOrEmpty(searchString)) { var SearchTags = mySearcher.SplitString(searchString); foreach (var component in myComponentDataUtil.GetComponents(SearchTags)) { myComponents._components.Add(component); } } else { if (!String.IsNullOrEmpty(category)) { foreach (var component in myComponentDataUtil.GetAllComponents()) { if (component.Category == category) myComponents._components.Add(component); } } else { foreach (var component in myComponentDataUtil.GetAllComponents()) { myComponents._components.Add(component); } } } var resultList=myComponents.GetAllCategories(); resultList.Sort(); var noneFound= new List<string>(); noneFound.Add("Ingen kategorier fundet"); if (resultList.Count != 0) ViewData["Categories"] = resultList; else ViewData["Categories"] = noneFound; return View(myComponents._components.OrderBy(c=>c.ComponentName).DistinctBy(c => c.SerieNr).ToList()); }
//[AllowAnonymous] public ActionResult Reserve() { var myLoanDataUtil = new LoanDataUtil(); var myloanedComponents = new Components(); var myreservedComponents = new Components(); if (Session["User"] == null) return RedirectToAction("Index","Home"); // Tjekker om der er indtastet en s�gning, hvis ja, hentes en komponentliste med de indtastede tags if (!String.IsNullOrEmpty(Session["User"].ToString())) { var studieNr =Session["User"].ToString(); foreach (var component in myLoanDataUtil.GetLoanedComponentFromStudentId(studieNr)) { myloanedComponents._components.Add(component); } foreach (var component in myLoanDataUtil.GetReservedComponentFromStudentId(studieNr)) { myreservedComponents._components.Add(component); } var SortedReserveList = myreservedComponents._components.OrderBy(c => c.ComponentName).ToList(); var SortedLoanList= myloanedComponents._components.OrderBy(c => c.ComponentName).ToList(); var SortedReserveLoanInformationList = new List<string>(); var SortedLoanedLoanInformationList = new List<string>(); ViewData["ReservedComponents"] = SortedReserveList; ViewData["LoanedComponents"] = SortedLoanList; foreach (var component in SortedReserveList) { SortedReserveLoanInformationList.Add(myLoanDataUtil.GetLoanInformation(component).ReservationDate.Value.Value.ToShortDateString()); } foreach (var component in SortedLoanList) { SortedLoanedLoanInformationList.Add(myLoanDataUtil.GetLoanInformation(component).ReturnDate.Value.Value.ToShortDateString()); } ViewData["ReservedLoanInformation"] = SortedReserveLoanInformationList; ViewData["LoanedLoanInformation"] = SortedLoanedLoanInformationList; } return View(); }
//[AllowAnonymous] public ActionResult Reserve() { var mySearcher = new Searcher(); var myComponentDataUtil = new ComponentDataUtil(); var myComponents = new Components(); // Tjekker om der er indtastet en s�gning, hvis ja, hentes en komponentliste med de indtastede tags if (!String.IsNullOrEmpty(Session["User"].ToString())) { var studieNr = mySearcher.SplitString(Session["User"].ToString()); foreach (var component in myComponentDataUtil.GetComponents(studieNr)) { myComponents._components.Add(component); } } return View(myComponents._components.OrderBy(c => c.ComponentName).ToList()); }
// // GET: /Home/ public ActionResult Index(string searchString, string category, int? page) { var componentsPerPage = new int?(); var mySearcher = new Searcher(); var myComponentDataUtil = new ComponentDataUtil(); var myComponents = new Components(); var emptyComponent = new Component(); var listOfQuantity = new List<int>(); emptyComponent.ComponentName="Ingen Komponenter Fundet"; componentsPerPage = 20; // Tjekker om der er indtastet en søgning, hvis ja, hentes en komponentliste med de indtastede tags if (!String.IsNullOrEmpty(searchString)) { var SearchTags = mySearcher.SplitString(searchString); foreach (var component in myComponentDataUtil.GetComponents(SearchTags)) { myComponents._components.Add(component); } } else { //Tjekker om man har trykket på en kategori, hvis ja, hentes en komponentliste med den kategori if (!String.IsNullOrEmpty(category)) { foreach (var component in myComponentDataUtil.GetAllComponents()) { if (component.Category == category) myComponents._components.Add(component); } } else { foreach (var component in myComponentDataUtil.GetAllComponents()) { myComponents._components.Add(component); } } } //Opretter liste med alle kategorier var listOfCategories=myComponents.GetAllCategories(); //Sætter listen med kategorier i alfabetisk rækkefølge listOfCategories.Sort(); //Opretter liste til hvis der ikke eksisterer nogen kategorier var noneFound= new List<string> {"Ingen kategorier fundet"}; if (listOfCategories.Count != 0) ViewData["Categories"] = listOfCategories; else ViewData["Categories"] = noneFound; //Sorterer listen med komponenter, så den er i alfabetisk rækkefølge og komponenterne kun ankommer en gang. var sortedList = myComponents._components.OrderBy(c => c.ComponentName).DistinctBy(c => c.ComponentName).ToList(); //Udregner hvor mange sider, der skal være på hjemmesiden ViewData["NumberOfPages"] = (sortedList.Count + componentsPerPage - 1) / componentsPerPage; //Udregner hvor mange der er af hver komponent type(taget ud af Componentname), lægger det derefter over i en ny liste foreach (var component in sortedList) { listOfQuantity.Add(myComponents.GetAvailableQuantity(component.ComponentName)); } //Hvis dette tjek går igennem, er der ikke nok komponenter til at vise den ønskede side if (((componentsPerPage * page.GetValueOrDefault())) >= sortedList.Count || page < 0) { myComponents._components.Clear(); myComponents._components.Add(emptyComponent); listOfQuantity.Clear(); listOfQuantity.Add(0); return View(myComponents._components); } ViewData["AvailableQuantity"] = listOfQuantity; //Hvis dette tjek går igennem har man komponenter til overs, men ikke nok til at lave en "hel" side if(((componentsPerPage*page.GetValueOrDefault())+componentsPerPage)>sortedList.Count) return View(sortedList.GetRange((page * componentsPerPage).GetValueOrDefault(), sortedList.Count - (componentsPerPage * page).GetValueOrDefault())); //Returnerer componentsPerPage, startende fra den side man er kommet til return View(sortedList.GetRange(((page * componentsPerPage).GetValueOrDefault()), componentsPerPage.GetValueOrDefault())); }