Skip to content
Snippets Groups Projects
Commit 4108250a authored by hkarwa2s's avatar hkarwa2s
Browse files

Super tolles Refaktorn -> entfernen unnötiger imports

Funktionen für Kategorie Unterpunkte, mit Parametern für die Produktsuche
parent 4d415678
No related branches found
No related tags found
No related merge requests found
Showing
with 347 additions and 419 deletions
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package org.s4s.gui.views;
import com.vaadin.navigator.ViewChangeListener;
......@@ -18,8 +13,8 @@ import org.s4s.services.util.Views;
* @author JanPhilipp
*/
public class Kontaktbestaetigung extends TemplateView {
@Override
@Override
public void enter(ViewChangeListener.ViewChangeEvent event) {
this.setUp();
}
......@@ -27,27 +22,24 @@ public class Kontaktbestaetigung extends TemplateView {
private void setUp() {
Panel panel = new Panel();
panel.setSizeUndefined();
VerticalLayout content = new VerticalLayout();
Button button = new Button("Zurück zur Startseite");
button.addClickListener(e ->
UI.getCurrent().getNavigator().navigateTo(Views.WELCOME));
button.addClickListener(e
-> UI.getCurrent().getNavigator().navigateTo(Views.WELCOME));
Label label = new Label("Vielen Dank für ihre Kontaktanfrage, Wir werden diese in Kürze beantworten und so schnell wie möglich beantworten");
content.addComponent(label);
content.addComponent(button);
content.setMargin(true);
panel.setContent(content);
//this.addComponent(panel);
//this.setComponentAlignment(panel, Alignment.MIDDLE_CENTER);
super.setUpFooterAndHeader(panel);
}}
content.addComponent(label);
content.addComponent(button);
content.setMargin(true);
panel.setContent(content);
//this.addComponent(panel);
//this.setComponentAlignment(panel, Alignment.MIDDLE_CENTER);
super.setUpFooterAndHeader(panel);
}
}
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package org.s4s.gui.views;
import com.vaadin.navigator.ViewChangeListener;
import com.vaadin.server.FontAwesome;
import com.vaadin.shared.ui.label.ContentMode;
import com.vaadin.ui.*;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.s4s.exceptions.DAOException;
import org.s4s.dao.KundenDAO;
import org.s4s.exceptions.DAOException;
import org.s4s.exceptions.NoSuchUserOrPassword;
import org.s4s.process.control.LoginControl;
import org.s4s.services.util.Views;
......@@ -72,36 +66,30 @@ public class LoginView extends TemplateView {
horSpacer.setComponentAlignment(layout, Alignment.MIDDLE_CENTER);
this.setComponentAlignment(horSpacer, Alignment.MIDDLE_CENTER);
button.addClickListener(new Button.ClickListener() {
@Override
public void buttonClick(Button.ClickEvent event) {
String login = userLogin.getValue();
String password = passwordField.getValue();
try {
kundenDAO.getUserByCredentials(login, password);
} catch (NoSuchUserOrPassword ex) {
Notification.show("Fehler", "Login oder Passwort falsch", Notification.Type.ERROR_MESSAGE);
userLogin.setValue("");
passwordField.setValue("");
} catch (DAOException ex) {
Notification.show("Fehler", "interner Fehler", Notification.Type.ERROR_MESSAGE);
Logger.getLogger(LoginView.class.getName()).log(Level.SEVERE, null, ex);
}
// bei Erfolg wird der Navigator angesprochen und man wird in wieder zur Landingpage geführt
UI.getCurrent().getNavigator().navigateTo(Views.WELCOME);
button.addClickListener((Button.ClickEvent event) -> {
String login = userLogin.getValue();
String password = passwordField.getValue();
try {
kundenDAO.getUserByCredentials(login, password);
} catch (NoSuchUserOrPassword ex) {
Notification.show("Fehler", "Login oder Passwort falsch", Notification.Type.ERROR_MESSAGE);
userLogin.setValue("");
passwordField.setValue("");
Logger.getLogger(LoginView.class.getName()).log(Level.SEVERE, null, ex);
} catch (DAOException ex) {
Notification.show("Fehler", "interner Fehler", Notification.Type.ERROR_MESSAGE);
Logger.getLogger(LoginView.class.getName()).log(Level.SEVERE, null, ex);
}
// bei Erfolg wird der Navigator angesprochen und man wird in wieder zur Landingpage geführt
UI.getCurrent().getNavigator().navigateTo(Views.WELCOME);
});
horSpacer.setStyleName("LoginViewContainer");
// layout.addComponent(buttonReg);
buttonReg.addClickListener(new Button.ClickListener() {
@Override
public void buttonClick(Button.ClickEvent event) {
UI.getCurrent().getNavigator().navigateTo(Views.REGISTRIERUNG);
}
buttonReg.addClickListener((Button.ClickEvent event) -> {
UI.getCurrent().getNavigator().navigateTo(Views.REGISTRIERUNG);
});
}
......
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package org.s4s.gui.views;
import com.vaadin.navigator.View;
import com.vaadin.navigator.ViewChangeListener;
import com.vaadin.ui.VerticalLayout;
/**
*
* @author Holger
*/
public class PasswortView extends TemplateView{
public class PasswortView extends TemplateView {
@Override
public void enter(ViewChangeListener.ViewChangeEvent event) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
}
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package org.s4s.gui.views;
import com.vaadin.navigator.View;
......@@ -14,7 +9,6 @@ import com.vaadin.ui.DateField;
import com.vaadin.ui.FormLayout;
import com.vaadin.ui.HorizontalLayout;
import com.vaadin.ui.Label;
import com.vaadin.ui.NativeSelect;
import com.vaadin.ui.Panel;
import com.vaadin.ui.PasswordField;
import com.vaadin.ui.TextField;
......@@ -23,127 +17,115 @@ import java.util.Date;
import org.s4s.process.control.RegistrationControl;
import org.s4s.services.util.Views;
/**
*
* @author JanPhilipp
*/
public class RegistrierungView extends TemplateView implements View {
// RegistrierungControl regControl;
// VerticalLayout layout;
// VerticalLayout layout;
@Override
public void enter(ViewChangeListener.ViewChangeEvent event) {
this.setUp();
}
private void setUp() {
Panel panel = new Panel("Registrierung");
panel.setSizeUndefined();
FormLayout content = new FormLayout();
TextField benutzername = new TextField("Benutzername");
content.addComponent(benutzername);
DateField bday = new DateField("Geburtstag");
content.addComponent(bday);
TextField nachnameTxt = new TextField("Nachname:");
nachnameTxt.setIcon(FontAwesome.USER);
content.addComponent(nachnameTxt);
TextField vornameTxt = new TextField("Vorname:");
vornameTxt.setIcon(FontAwesome.ANDROID);
content.addComponent(vornameTxt);
/* NativeSelect fachbereich = new NativeSelect("Fachbereich"); //hier braucht die Datenbank Integer Werte! Fachbereich ist nicht Student, Hiwi oder Prof sonder FB01, 02,03 etc!!
Panel panel = new Panel("Registrierung");
panel.setSizeUndefined();
FormLayout content = new FormLayout();
TextField benutzername = new TextField("Benutzername");
content.addComponent(benutzername);
DateField bday = new DateField("Geburtstag");
content.addComponent(bday);
TextField nachnameTxt = new TextField("Nachname:");
nachnameTxt.setIcon(FontAwesome.USER);
content.addComponent(nachnameTxt);
TextField vornameTxt = new TextField("Vorname:");
vornameTxt.setIcon(FontAwesome.ANDROID);
content.addComponent(vornameTxt);
/* NativeSelect fachbereich = new NativeSelect("Fachbereich"); //hier braucht die Datenbank Integer Werte! Fachbereich ist nicht Student, Hiwi oder Prof sonder FB01, 02,03 etc!!
fachbereich.addItems("Student", "Hivi", "Prof"); //ich kann das grad nicht selber machen, weil ich beim deployen fehler kriege und nicht ungetestetes commiten möchte! Also bitte abändern!
fachbereich.setNullSelectionAllowed(false);
content.addComponent(fachbereich);
*/
TextField fachbereich = new TextField("Fachbereich:");
fachbereich.setConverter(Integer.class);
fachbereich.setIcon(FontAwesome.ANDROID);
content.addComponent(fachbereich);
TextField emailTxt = new TextField("E-Mail:");
emailTxt.setIcon(FontAwesome.MAIL_FORWARD);
content.addComponent(emailTxt);
TextField emailTxtWdh = new TextField("E-Mail wiederholen:");
emailTxtWdh.setIcon(FontAwesome.MAIL_FORWARD);
content.addComponent(emailTxtWdh);
PasswordField passwortTxt = new PasswordField("Passwort:");
passwortTxt.setIcon(FontAwesome.KEY);
content.addComponent(passwortTxt);
PasswordField passwortTxtWdh = new PasswordField("Passwort wiederholen:");
passwortTxtWdh.setIcon(FontAwesome.KEY);
content.addComponent(passwortTxtWdh);
HorizontalLayout buttons = new HorizontalLayout();
Button abbruch = new Button("Abbruch");
abbruch.setIcon(FontAwesome.STOP_CIRCLE);
buttons.addComponent(abbruch);
buttons.addComponent(new Label("&nbsp", ContentMode.HTML));
Button bestätigen = new Button("Bestätigen");
bestätigen.setIcon(FontAwesome.CHECK);
buttons.addComponent(bestätigen);
content.addComponent(buttons);
*/
TextField fachbereich = new TextField("Fachbereich:");
fachbereich.setConverter(Integer.class);
fachbereich.setIcon(FontAwesome.ANDROID);
content.addComponent(fachbereich);
TextField emailTxt = new TextField("E-Mail:");
emailTxt.setIcon(FontAwesome.MAIL_FORWARD);
content.addComponent(emailTxt);
TextField emailTxtWdh = new TextField("E-Mail wiederholen:");
emailTxtWdh.setIcon(FontAwesome.MAIL_FORWARD);
content.addComponent(emailTxtWdh);
PasswordField passwortTxt = new PasswordField("Passwort:");
passwortTxt.setIcon(FontAwesome.KEY);
content.addComponent(passwortTxt);
PasswordField passwortTxtWdh = new PasswordField("Passwort wiederholen:");
passwortTxtWdh.setIcon(FontAwesome.KEY);
content.addComponent(passwortTxtWdh);
HorizontalLayout buttons = new HorizontalLayout();
Button abbruch = new Button("Abbruch");
abbruch.setIcon(FontAwesome.STOP_CIRCLE);
buttons.addComponent(abbruch);
buttons.addComponent(new Label("&nbsp", ContentMode.HTML));
Button bestätigen = new Button("Bestätigen");
bestätigen.setIcon(FontAwesome.CHECK);
buttons.addComponent(bestätigen);
content.addComponent(buttons);
// content.setSizeUndefined();
content.setMargin(true);
panel.setContent(content);
//this.addComponent(panel);
//this.setComponentAlignment(panel, Alignment.MIDDLE_CENTER);
bestätigen.addClickListener( e -> {
String benutzer = benutzername.getValue();
String nachname = nachnameTxt.getValue();
String vorname = vornameTxt.getValue();
Date gebDate = bday.getValue();
int fBereich = (int) fachbereich.getConvertedValue();
String email = emailTxt.getValue();
String emailwdh = emailTxtWdh.getValue();
String passwort = passwortTxt.getValue();
String passwortWdh = passwortTxtWdh.getValue();
UI.getCurrent().getNavigator().navigateTo(Views.REGISTRIERUNGSBESTAETIGUNG);
//Anbindungstestblock. svolle2s
//RegistrationControl.init(new String[]{nachname, vorname, email, emailwdh, passwort, passwortWdh, benutzer,}); // diverse Daten fehlen siehe bday fachbereich
RegistrationControl.init(benutzer, nachname, vorname, gebDate, fBereich, email, emailwdh, passwort, passwortWdh);
System.out.println(benutzer);
System.out.println(nachname);
System.out.println(vorname);
System.out.println(gebDate);
System.out.println(email);
System.out.println(emailwdh);
System.out.println(passwort);
System.out.println(passwortWdh);
System.out.println(fBereich);
// Weiterleitung auf Bestätigunsseite
content.setMargin(true);
panel.setContent(content);
//this.addComponent(panel);
//this.setComponentAlignment(panel, Alignment.MIDDLE_CENTER);
bestätigen.addClickListener(e -> {
String benutzer = benutzername.getValue();
String nachname = nachnameTxt.getValue();
String vorname = vornameTxt.getValue();
Date gebDate = bday.getValue();
int fBereich = (int) fachbereich.getConvertedValue();
String email = emailTxt.getValue();
String emailwdh = emailTxtWdh.getValue();
String passwort = passwortTxt.getValue();
String passwortWdh = passwortTxtWdh.getValue();
UI.getCurrent().getNavigator().navigateTo(Views.REGISTRIERUNGSBESTAETIGUNG);
//Anbindungstestblock. svolle2s
//RegistrationControl.init(new String[]{nachname, vorname, email, emailwdh, passwort, passwortWdh, benutzer,}); // diverse Daten fehlen siehe bday fachbereich
RegistrationControl.init(benutzer, nachname, vorname, gebDate, fBereich, email, emailwdh, passwort, passwortWdh);
System.out.println(benutzer);
System.out.println(nachname);
System.out.println(vorname);
System.out.println(gebDate);
System.out.println(email);
System.out.println(emailwdh);
System.out.println(passwort);
System.out.println(passwortWdh);
System.out.println(fBereich);
// Weiterleitung auf Bestätigunsseite
});
abbruch.addClickListener(e -> {
UI.getCurrent().getNavigator().navigateTo(Views.WELCOME);
});
super.setUpFooterAndHeader(panel);
super.setUpFooterAndHeader(panel);
}
}
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package org.s4s.gui.views;
import com.vaadin.navigator.View;
import com.vaadin.navigator.ViewChangeListener;
import com.vaadin.ui.Alignment;
import com.vaadin.ui.Button;
import com.vaadin.ui.Label;
import com.vaadin.ui.Panel;
import com.vaadin.ui.UI;
import com.vaadin.ui.VerticalLayout;
import org.s4s.gui.views.TemplateView;
import org.s4s.services.util.Views;
/**
......@@ -21,8 +14,8 @@ import org.s4s.services.util.Views;
* @author JanPhilipp
*/
public class RegistrierungsBestaetigung extends TemplateView implements View {
@Override
@Override
public void enter(ViewChangeListener.ViewChangeEvent event) {
this.setUp();
}
......@@ -30,23 +23,24 @@ public class RegistrierungsBestaetigung extends TemplateView implements View {
private void setUp() {
Panel panel = new Panel();
panel.setSizeUndefined();
VerticalLayout content = new VerticalLayout();
Button button = new Button("Zurück zur Startseite");
button.addClickListener(e ->
UI.getCurrent().getNavigator().navigateTo(Views.WELCOME));
button.addClickListener(e
-> UI.getCurrent().getNavigator().navigateTo(Views.WELCOME));
Label label = new Label("Vielen Dank für ihre Registrierung");
content.addComponent(label);
content.addComponent(button);
content.setMargin(true);
panel.setContent(content);
//this.addComponent(panel);
//this.setComponentAlignment(panel, Alignment.MIDDLE_CENTER);
super.setUpFooterAndHeader(panel);
}}
content.addComponent(label);
content.addComponent(button);
content.setMargin(true);
panel.setContent(content);
//this.addComponent(panel);
//this.setComponentAlignment(panel, Alignment.MIDDLE_CENTER);
super.setUpFooterAndHeader(panel);
}
}
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package org.s4s.gui.views;
import com.vaadin.navigator.View;
......@@ -20,8 +15,8 @@ import com.vaadin.ui.UI;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.s4s.process.control.ShopControl;
import org.s4s.exceptions.OwnsAlreadyShop;
import org.s4s.process.control.ShopControl;
import org.s4s.services.util.Views;
/**
......
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package org.s4s.gui.views;
import com.vaadin.data.util.BeanContainer;
......@@ -10,6 +5,7 @@ import com.vaadin.data.util.BeanItem;
import com.vaadin.event.ItemClickEvent;
import com.vaadin.navigator.ViewChangeListener;
import com.vaadin.server.FontAwesome;
import com.vaadin.server.VaadinSession;
import com.vaadin.ui.Alignment;
import com.vaadin.ui.Button;
import com.vaadin.ui.HorizontalLayout;
......@@ -17,15 +13,18 @@ import com.vaadin.ui.Label;
import com.vaadin.ui.Notification;
import com.vaadin.ui.Table;
import com.vaadin.ui.TextField;
import com.vaadin.ui.UI;
import java.util.HashSet;
import java.util.Set;
import org.s4s.dao.ProductDAO;
import org.s4s.dao.ShopSearchDAO;
import org.s4s.exceptions.DAOException;
import org.s4s.modell.dto.Product;
import org.s4s.modell.dto.Shop;
import org.s4s.modell.dto.Warenkorb;
import org.s4s.process.control.ProductSearch;
import org.s4s.process.control.ShopSearch;
import org.s4s.services.util.Roles;
/**
*
......@@ -41,6 +40,11 @@ public class ShopView extends TemplateView {
@Override
public void enter(ViewChangeListener.ViewChangeEvent event) {
this.setUp();
if (event.getParameters() != null) {
// split at "/", add each part as a label
String str = event.getParameters();
search(str);
}
}
public void setUp() {
......@@ -69,59 +73,100 @@ public class ShopView extends TemplateView {
final BeanContainer<Integer, Product> data = new BeanContainer<>(Product.class);
data.setBeanIdProperty("id");
final Table table = new Table("Products", data);
/*final BeanContainer<Integer, Shop> data = new BeanContainer<>(Shop.class);
data.setBeanIdProperty("id");
final Table table = new Table("Shops", data);*/
table.setSizeFull();
table.setSelectable(true);
Set<Product> liste = new HashSet<>();
final BeanContainer<Integer, Shop> dataShops = new BeanContainer<>(Shop.class);
dataShops.setBeanIdProperty("id");
final Table tableShops = new Table("Shops", dataShops);
tableShops.setSizeFull();
Set<Shop> listeShops = new HashSet<>();
button.addClickListener((Button.ClickEvent event) -> {
String str = textfield.getValue().trim();
if (str.equals("")) {
VaadinSession session = UI.getCurrent().getSession();
if (session.getAttribute(Roles.CURRENTUSER) != null) {
System.out.println(session.getAttribute(Roles.CURRENTUSER));
Button addButton = new Button("Hinzufügen");
addButton.addClickListener((event) -> {
if (this.product == null) {
Notification.show(null, "Bitte Produkt(e) auswählen!", Notification.Type.HUMANIZED_MESSAGE);
} else {
warenkorb.add(product);
System.out.println(warenkorb.getAnzahl());
}
});
addComponent(addButton);
setComponentAlignment(addButton, Alignment.MIDDLE_CENTER);
}
table.addItemClickListener(new ItemClickEvent.ItemClickListener() {
@Override
public void itemClick(ItemClickEvent event) {
BeanItem<Product> productBean = data.getItem(event.getItemId());
product = productBean.getBean();
}
});
button.addClickListener(new Button.ClickListener() {
@Override
public void buttonClick(Button.ClickEvent event) {
String str = textfield.getValue().trim();
search(str);
/*
if (str.equals("")) {
Notification.show(null, "Bitte gesuchtes Produkt eingeben!", Notification.Type.WARNING_MESSAGE);
} else {
} else {
addComponent(table);
addComponent(tableShops);
try {
liste.addAll(products.getProductByName(str));
liste.addAll(products.getProductByDescription(str));
//listeShops.addAll(shops.getShopByName(str));
//listeShops.addAll(shops.getShopByOwner(str));
liste.addAll(products.getProductByName(str));
liste.addAll(products.getProductByDescription(str));
listeShops.addAll(shops.getShopByName(str));
listeShops.addAll(shops.getShopByOwner(str));
} catch (Exception ex) {
//eig. DAO Exception, aber fehler...
//eig. DAO Exception, aber fehler...
}
data.removeAllItems();
dataShops.removeAllItems();
data.addAll(liste);
dataShops.addAll(listeShops);
table.setPageLength(table.size());
tableShops.setPageLength(tableShops.size());
}
});
*/
// BeanItem<Product> item = (BeanItem) liste.getItem(liste.getValue);
// Product myBean = item.getBean();
}
});
}
Button addButton = new Button("Hinzufügen");
private void search(String str) {
final BeanContainer<Integer, Product> data = new BeanContainer<>(Product.class);
data.setBeanIdProperty("id");
final Table table = new Table("Products", data);
table.setSizeFull();
table.setSelectable(true);
Set<Product> liste = new HashSet<>();
if ("".equals(str)) {
Notification.show(null, "Bitte gesuchtes Produkt eingeben!", Notification.Type.WARNING_MESSAGE);
} else {
addComponent(table);
try {
liste.addAll(products.getProductByName(str));
liste.addAll(products.getProductByDescription(str));
} catch (DAOException ex) {
addButton.addClickListener((event) -> {
if (this.product == null) {
Notification.show(null, "Bitte Produkt(e) auswählen!", Notification.Type.HUMANIZED_MESSAGE);
} else {
warenkorb.add(product);
System.out.println(warenkorb.getAnzahl());
}
});
addComponent(addButton);
setComponentAlignment(addButton, Alignment.MIDDLE_CENTER);
data.removeAllItems();
data.addAll(liste);
table.setPageLength(table.size());
table.addItemClickListener(new ItemClickEvent.ItemClickListener() {
@Override
public void itemClick(ItemClickEvent event) {
table.addItemClickListener((ItemClickEvent event) -> {
BeanItem<Product> productBean = data.getItem(event.getItemId());
product = productBean.getBean();
}
});
// BeanItem<Product> item = (BeanItem) liste.getItem(liste.getValue);
// Product myBean = item.getBean();
});
}
}
}
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package org.s4s.gui.views;
import com.vaadin.navigator.View;
import com.vaadin.navigator.ViewChangeListener;
import com.vaadin.ui.Alignment;
import com.vaadin.ui.Button;
import com.vaadin.ui.Label;
import com.vaadin.ui.Panel;
......@@ -20,8 +14,8 @@ import org.s4s.services.util.Views;
* @author JanPhilipp
*/
public class ShoperstellungsBestätigung extends TemplateView implements View {
@Override
@Override
public void enter(ViewChangeListener.ViewChangeEvent event) {
this.setUp();
}
......@@ -29,24 +23,24 @@ public class ShoperstellungsBestätigung extends TemplateView implements View {
private void setUp() {
Panel panel = new Panel();
panel.setSizeUndefined();
VerticalLayout content = new VerticalLayout();
Button button = new Button("Zurück zur Startseite");
button.addClickListener(e ->
UI.getCurrent().getNavigator().navigateTo(Views.WELCOME));
button.addClickListener(e
-> UI.getCurrent().getNavigator().navigateTo(Views.WELCOME));
Label label = new Label("Vielen Dank für ihre Shoperstellung");
content.addComponent(label);
content.addComponent(button);
content.setMargin(true);
panel.setContent(content);
//this.addComponent(panel);
//this.setComponentAlignment(panel, Alignment.MIDDLE_CENTER);
super.setUpFooterAndHeader(panel);
content.addComponent(label);
content.addComponent(button);
content.setMargin(true);
panel.setContent(content);
//this.addComponent(panel);
//this.setComponentAlignment(panel, Alignment.MIDDLE_CENTER);
super.setUpFooterAndHeader(panel);
}
}
......@@ -6,47 +6,47 @@ import com.vaadin.server.*;
import com.vaadin.ui.*;
import com.vaadin.ui.themes.BaseTheme;
import java.io.File;
import org.s4s.process.control.LogoutControl;
import org.s4s.process.control.ProductSearch;
import org.s4s.services.util.Roles;
import org.s4s.services.util.Views;
/**
* Created by Max-Desktop on 14.05.2017.
*/
public class TemplateView extends VerticalLayout implements View {
VaadinSession session = UI.getCurrent().getSession();
ProductSearch search = ProductSearch.getInstance();
private Image createLogo() {
HorizontalLayout logoLayout = new HorizontalLayout();
logoLayout.addStyleName("logoLayout");
String rootpath = VaadinService.getCurrent().getBaseDirectory().getAbsolutePath();
FileResource srcLogo = new FileResource(new File(rootpath + "/WEB-INF/images/logo4.jpeg"));
Image logo = new Image();
logo.setSource(srcLogo);
logo.setStyleName("logo");
return logo;
}
@Override
public void enter(ViewChangeListener.ViewChangeEvent viewChangeEvent) {
}
public void setLoginButton () {
}
public void setLoginButton() {
}
public void setUpFooterAndHeader(AbstractComponent content) {
//HEADER
final GridLayout headerLayout = new GridLayout(3,1);
final GridLayout headerLayout = new GridLayout(3, 1);
//@Max: Logo eingefügt, brauchen wir meiner Meinung nach nicht mehr. #svolle2s
headerLayout.setSpacing(true);
// refactored Code --> header and Footer are outsourced by there own methodes #mkomp2s
......@@ -56,18 +56,17 @@ public class TemplateView extends VerticalLayout implements View {
content.addStyleName("MainContenLocation");
//Final Content warpping Header and Footer around Content #mkomp2s
final VerticalLayout mainLayout = new VerticalLayout(headerLayout,navigationPanelGrid, content, footerLayout);
final VerticalLayout mainLayout = new VerticalLayout(headerLayout, navigationPanelGrid, content, footerLayout);
mainLayout.setSizeFull();
///mainLayout.setExpandRatio(content, 1);
mainLayout.setSpacing(true);;
mainLayout.setComponentAlignment(footerLayout, Alignment.BOTTOM_CENTER);
addComponent(mainLayout);
mainLayout.setWidthUndefined();
//setComponentAlignment(navigationPanelGrid,Alignment.MIDDLE_CENTER);
setComponentAlignment(mainLayout,Alignment.MIDDLE_CENTER);
setComponentAlignment(mainLayout, Alignment.MIDDLE_CENTER);
this.setSpacing(true);
this.setHeightUndefined();
......@@ -75,13 +74,13 @@ public class TemplateView extends VerticalLayout implements View {
this.setMargin(true);
}
HorizontalLayout buildNavigationHeader () {
HorizontalLayout buildNavigationHeader() {
HorizontalLayout navigationPanelGrid = new HorizontalLayout();
MenuBar.Command mycommand = new MenuBar.Command() {
public void menuSelected(MenuBar.MenuItem selectedItem) {
System.out.println(selectedItem);
switch (selectedItem.getText()){
switch (selectedItem.getText()) {
case "Home":
UI.getCurrent().getNavigator().navigateTo(Views.WELCOME);
break;
......@@ -103,27 +102,38 @@ public class TemplateView extends VerticalLayout implements View {
UI.getCurrent().getNavigator().navigateTo(Views.BENUTZERKONTO);
break;
case "Logout":
session.setAttribute(Roles.CURRENTUSER, null);
LogoutControl.logout();
UI.getCurrent().getNavigator().navigateTo(Views.WELCOME);
break;
case "Kontakt":
UI.getCurrent().getNavigator().navigateTo(Views.CONTACT);
break;
// Edit Holger Anfang
case "Literatur":
UI.getCurrent().getNavigator().navigateTo(Views.SHOP + "/literatur");
break;
}
case "Mitschriften":
UI.getCurrent().getNavigator().navigateTo(Views.SHOP + "/mitschriften");
break;
case "Nachhilfe":
UI.getCurrent().getNavigator().navigateTo(Views.SHOP + "/nachhilfe");
break;
// Edit Ende
}
}
;
};
MenuBar barmenu = new MenuBar();
MenuBar.MenuItem homeItem = barmenu.addItem("Home", null, mycommand);
// Another top-level item
MenuBar.MenuItem categoryItem = barmenu.addItem("Kategorien", null, null);
categoryItem.addItem("Literatur", null, mycommand);
categoryItem.addItem("Mitschriften", null, mycommand);
categoryItem.addItem("Mitschriften", null, mycommand);
categoryItem.addItem("Nachhilfe", null, mycommand);
// Yet another top-level item
......@@ -137,10 +147,8 @@ public class TemplateView extends VerticalLayout implements View {
userItem.addItem("Einstellungen", null, mycommand);
userItem.addItem("Logout", null, mycommand);
TextField tfSeach = new TextField();
Button btnSearch = new Button("Suche" , FontAwesome.SEARCH);
Button btnSearch = new Button("Suche", FontAwesome.SEARCH);
navigationPanelGrid.addComponent(createLogo());
navigationPanelGrid.addComponent(barmenu);
......@@ -148,21 +156,21 @@ public class TemplateView extends VerticalLayout implements View {
navigationPanelGrid.addComponent(btnSearch);
navigationPanelGrid.setSpacing(true);
navigationPanelGrid.setSizeUndefined();
if (session.getAttribute(Roles.CURRENTUSER) == null){
if (session.getAttribute(Roles.CURRENTUSER) == null) {
userItem.setVisible(false);
} else {
registerItem.setVisible(false);
loginItem.setVisible(false);
}
navigationPanelGrid.setStyleName("navbarGardient");
navigationPanelGrid.setComponentAlignment(barmenu,Alignment.MIDDLE_CENTER);
navigationPanelGrid.setComponentAlignment(tfSeach,Alignment.MIDDLE_RIGHT);
navigationPanelGrid.setComponentAlignment(btnSearch,Alignment.MIDDLE_RIGHT);
navigationPanelGrid.setComponentAlignment(barmenu, Alignment.MIDDLE_CENTER);
navigationPanelGrid.setComponentAlignment(tfSeach, Alignment.MIDDLE_RIGHT);
navigationPanelGrid.setComponentAlignment(btnSearch, Alignment.MIDDLE_RIGHT);
return navigationPanelGrid;
}
HorizontalLayout buildFooter () {
HorizontalLayout buildFooter() {
//FOOTER
HorizontalLayout footerLayout = new HorizontalLayout();
......@@ -181,8 +189,8 @@ public class TemplateView extends VerticalLayout implements View {
btnContact.addClickListener((Button.ClickEvent event) -> {
UI.getCurrent().getNavigator().navigateTo(Views.CONTACT);
});
footerLayout.setComponentAlignment(btnContact,Alignment.MIDDLE_CENTER);
footerLayout.setComponentAlignment(btnImpressum,Alignment.MIDDLE_CENTER);
footerLayout.setComponentAlignment(btnContact, Alignment.MIDDLE_CENTER);
footerLayout.setComponentAlignment(btnImpressum, Alignment.MIDDLE_CENTER);
footerLayout.setStyleName("customfooter");
return footerLayout;
......
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package org.s4s.gui.views;
import com.vaadin.navigator.View;
import com.vaadin.navigator.ViewChangeListener;
import com.vaadin.ui.VerticalLayout;
/**
*
* @author Holger
*/
public class VerkaeuferbewertungView extends TemplateView{
public class VerkaeuferbewertungView extends TemplateView {
@Override
public void enter(ViewChangeListener.ViewChangeEvent event) {
this.setUp();
}
public void setUp(){
public void setUp() {
}
}
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package org.s4s.gui.views;
import com.vaadin.navigator.ViewChangeListener;
import com.vaadin.server.VaadinSession;
import com.vaadin.ui.Alignment;
import com.vaadin.ui.HorizontalLayout;
import com.vaadin.ui.Notification;
import com.vaadin.ui.Panel;
import com.vaadin.ui.Table;
import com.vaadin.ui.UI;
import com.vaadin.ui.VerticalLayout;
import java.util.HashSet;
import java.util.Set;
import java.util.List;
import org.s4s.modell.dto.Product;
import org.s4s.modell.dto.Warenkorb;
import org.s4s.services.util.Roles;
......@@ -49,25 +43,23 @@ public class WarenkorbView extends TemplateView {
this.addComponent(panel);
this.setComponentAlignment(panel, Alignment.TOP_LEFT);
} else {
HorizontalLayout horizontalLayout = new HorizontalLayout();
Panel pAnzahl = new Panel("In Ihrem Warenkorb sind momentan: " + warenkorb.getAnzahl() + " Artikel!");
this.addComponent(pAnzahl);
this.setComponentAlignment(pAnzahl, Alignment.TOP_LEFT);
horizontalLayout.addComponent(pAnzahl);
horizontalLayout.setComponentAlignment(pAnzahl, Alignment.TOP_LEFT);
Panel pSum = new Panel("Gesamtwert im Warenkorb beträgt: " + warenkorb.sum());
this.addComponent(pSum);
this.setComponentAlignment(pSum, Alignment.TOP_RIGHT);
warenkorb.auflisten();
final Table table = new Table("Ihr Warenkorb");
table.addContainerProperty("Bezeichnung", String.class, null);
table.addContainerProperty("Preis", Double.class, null);
table.addContainerProperty("Menge", Integer.class, null);
// table.setSizeFull();
// table.setSelectable(true);
addComponent(table);
Set<Product> liste = new HashSet<>();
liste.addAll(warenkorb.inhalt());
//data.addAll(liste);
this.setComponentAlignment(table, Alignment.TOP_CENTER);
horizontalLayout.addComponent(pSum);
horizontalLayout.setComponentAlignment(pSum, Alignment.TOP_RIGHT);
this.addComponent(horizontalLayout);
List<Product> list = warenkorb.inhalt();
list.forEach((p) -> {
HorizontalLayout layout = new HorizontalLayout();
layout.addComponent(new Panel(p.getName() + ", " + p.getDescription() + ", " + p.getPrice()));
this.addComponent(layout);
});
}
}
}
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package org.s4s.gui.views;
import com.vaadin.navigator.View;
import com.vaadin.navigator.ViewChangeListener;
import com.vaadin.ui.*;
import org.s4s.services.util.Views;
/**
*
* @author Holger
*/
public class WelcomeView extends TemplateView{
public class WelcomeView extends TemplateView {
@Override
public void enter(ViewChangeListener.ViewChangeEvent event) {
this.setUp();
}
public void setUp(){
public void setUp() {
//CONTENT goes here
final VerticalLayout contentLayout = new VerticalLayout();
super.setUpFooterAndHeader(contentLayout);
/* setSizeFull();
/* setSizeFull();
setMargin(true);
final HorizontalLayout horizontalLayout = new HorizontalLayout();
final HorizontalLayout buttonLayout = new HorizontalLayout();
Button sucheButton = new Button("Besuche Shop");
buttonLayout.addComponent(sucheButton);
buttonLayout.setComponentAlignment(sucheButton, Alignment.TOP_LEFT);
Button loginButton = new Button("Login");
buttonLayout.addComponent(loginButton);
buttonLayout.setComponentAlignment(loginButton, Alignment.TOP_RIGHT);
Button impressumButton = new Button("Impressum");
horizontalLayout.addComponent(impressumButton);
horizontalLayout.setComponentAlignment(impressumButton, Alignment.MIDDLE_LEFT);
addComponent(buttonLayout);
buttonLayout.setSizeFull();
sucheButton.addClickListener((Button.ClickEvent event) ->{
UI.getCurrent().getNavigator().navigateTo(Views.SHOP);
UI.getCurrent().getNavigator().navigateTo(Views.SHOP);
});
loginButton.addClickListener((Button.ClickEvent event) ->{
UI.getCurrent().getNavigator().navigateTo(Views.LOGIN);
});
impressumButton.addClickListener((Button.ClickEvent event) -> {
UI.getCurrent().getNavigator().navigateTo(Views.IMPRESSUM);
});
Label label = new Label("Willkommen in unserem Shop in Shop System!");
horizontalLayout.addComponent(label);
horizontalLayout.setComponentAlignment(label, Alignment.MIDDLE_CENTER);
......@@ -71,5 +63,5 @@ public class WelcomeView extends TemplateView{
addComponent(horizontalLayout);
setComponentAlignment(horizontalLayout, Alignment.TOP_CENTER);*/
}
}
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package org.s4s.modell.dto;
import org.apache.commons.lang3.builder.EqualsBuilder;
......
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package org.s4s.modell.dto;
/**
......@@ -16,12 +11,12 @@ public class Shop {
private int besitzer;
private double bewertung;
private int bewertunganzahl;
public Shop(){
public Shop() {
}
public Shop(int shopId, String name, int besitzer, double bewertung, int bewertunganzahl){
public Shop(int shopId, String name, int besitzer, double bewertung, int bewertunganzahl) {
this.shopId = shopId;
this.name = name;
this.besitzer = besitzer;
......@@ -68,7 +63,5 @@ public class Shop {
public void setBewertungsanzahl(int bewertunganzahl) {
this.bewertunganzahl = bewertunganzahl;
}
}
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package org.s4s.modell.dto;
/**
......@@ -20,10 +15,10 @@ public class User {
private final String benutzername;
public User(String benutzername){
public User(String benutzername) {
this.benutzername = benutzername;
}
public int getUserId() {
return userId;
}
......@@ -44,7 +39,6 @@ public class User {
return benutzername;
}
public String getVorname() {
return vorname;
}
......
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package org.s4s.modell.dto;
import java.util.ArrayList;
......
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package org.s4s.process.control;
/**
......@@ -10,5 +5,5 @@ package org.s4s.process.control;
* @author synot
*/
public class ContactControl {
}
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package org.s4s.process.control;
import com.vaadin.server.VaadinSession;
......
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package org.s4s.process.control;
import com.vaadin.server.VaadinSession;
import com.vaadin.ui.UI;
import org.s4s.services.util.Roles;
/**
*
* @author Sebastian
*/
public class LogoutControl {
private void logout() {
public static void logout() {
VaadinSession session = UI.getCurrent().getSession();
session.close();
session.setAttribute(Roles.CURRENTUSER, null);
// session.close();
}
}
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package org.s4s.process.control;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import org.s4s.exceptions.DAOException;
import org.s4s.dao.ProductDAO;
import org.s4s.dao.impl.AbstractDatabaseClass;
import org.s4s.exceptions.DAOException;
import org.s4s.modell.dto.Product;
/**
......@@ -41,7 +36,7 @@ public class ProductSearch extends AbstractDatabaseClass implements ProductDAO {
List<Product> liste = new ArrayList<>();
try (ResultSet set = executeQuery("SELECT *"
+ " FROM \"ERR\".\"artikel\" a"
+ " WHERE LOWER(a.name) = LOWER('" + kate + "');")) {
+ " WHERE LOWER(a.name) ILIKE LOWER('%" + kate + "%');")) {
while (set.next()) {
String name = set.getString("name");
int id = set.getInt("artikelID");
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment