//[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()); }
public MainViewModel() { //Initialization: selectedItemList_ = new ObservableCollection <Component>(); componentList_ = new ObservableCollection <Component>(); allComponentList_ = new ObservableCollection <Component>(); emailList_ = new ObservableCollection <Component>(); cdbUtil_ = new ComponentDataUtil(); ldbUtil_ = new LoanDataUtil(); //Get all components from database Refresh(); //Reset PW //Properties.Settings.Default.Reset(); }
public ActionResult Remove(Component component) { var loanDataUtil = new LoanDataUtil(); var loanInfo = loanDataUtil.GetLoanInformation(component); if (Session["User"] == null) { return(RedirectToAction("Index", "Home")); } if (Session["User"].ToString() == loanInfo.ReservationID) { loanDataUtil.RemoveReservation(component.ComponentID); } return(RedirectToAction("Reserve", "Account")); }
// // 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, 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>(); LoanDataUtil ldu = new LoanDataUtil(); myComponents._LoanInformations = ldu.GetAllLoanInformation(); 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); myComponents._components.AddRange(myComponentDataUtil.GetComponents(SearchTags)); } 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 { myComponents._components.AddRange(myComponentDataUtil.GetAllComponents()); } } //Sorterer listen med komponenter, s� den er i alfabetisk r�kkef�lge og komponenterne kun ankommer en gang. var sortedList = myComponents._components.DistinctBy(c => c.ComponentName).OrderBy(c => c.ComponentName).ToList(); //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; } //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) { mySearcher = new Searcher(); listOfQuantity.Add(myComponents.GetAvailableQuantity(component.ComponentName)); component.ComponentInfo = mySearcher.TruncateAtWord(component.ComponentInfo, 300); } //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()))); }