Hi
When i am accessing the application url from different machines my application not working properly and new session is not creating per user,so that session conflicts are happening. iam using Vaadinsessions
VaadinService.getCurrentRequest().getWrappedSession()
please help me…
my UI class code is:
package com.hitachi.ui;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.security.InvalidAlgorithmParameterException;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
import java.security.spec.InvalidKeySpecException;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Locale;
import javax.crypto.BadPaddingException;
import javax.crypto.IllegalBlockSizeException;
import javax.crypto.NoSuchPaddingException;
import service.PasswordRecoveryEmail;
import com.hitachi.enum_status.CryptoUtil;
import com.hitachi.enum_status.Validation;
import com.vaadin.annotations.PreserveOnRefresh;
import com.vaadin.annotations.Push;
import com.vaadin.annotations.Theme;
import com.vaadin.annotations.Widgetset;
import com.vaadin.data.Property.ValueChangeEvent;
import com.vaadin.data.Property.ValueChangeListener;
import com.vaadin.event.ShortcutAction.KeyCode;
import com.vaadin.event.ShortcutListener;
import com.vaadin.event.Transferable;
import com.vaadin.event.dd.DragAndDropEvent;
import com.vaadin.event.dd.DropHandler;
import com.vaadin.event.dd.acceptcriteria.AcceptCriterion;
import com.vaadin.navigator.Navigator;
import com.vaadin.navigator.View;
import com.vaadin.navigator.ViewChangeListener;
import com.vaadin.server.Page;
import com.vaadin.server.ThemeResource;
import com.vaadin.server.VaadinRequest;
import com.vaadin.server.VaadinSession;
import com.vaadin.shared.ui.label.ContentMode;
import com.vaadin.ui.AbstractSelect.AcceptItem;
import com.vaadin.ui.Alignment;
import com.vaadin.ui.Button;
import com.vaadin.ui.Button.ClickEvent;
import com.vaadin.ui.Button.ClickListener;
import com.vaadin.ui.ComboBox;
import com.vaadin.ui.Component;
import com.vaadin.ui.CssLayout;
import com.vaadin.ui.DragAndDropWrapper;
import com.vaadin.ui.DragAndDropWrapper.DragStartMode;
import com.vaadin.ui.FormLayout;
import com.vaadin.ui.HorizontalLayout;
import com.vaadin.ui.Image;
import com.vaadin.ui.Label;
import com.vaadin.ui.MenuBar;
import com.vaadin.ui.MenuBar.Command;
import com.vaadin.ui.MenuBar.MenuItem;
import com.vaadin.ui.NativeButton;
import com.vaadin.ui.Notification;
import com.vaadin.ui.PasswordField;
import com.vaadin.ui.Table;
import com.vaadin.ui.TextField;
import com.vaadin.ui.UI;
import com.vaadin.ui.VerticalLayout;
import com.vaadin.ui.Window;
import com.vaadin.ui.themes.Runo;
import controller.MainController;
import controller.SuperVisorController;
import controller.UserCreationController;
import controller.WTDEngineerController;
import controller.WTDManagerController;
import de.steinwedel.messagebox.ButtonId;
import de.steinwedel.messagebox.Icon;
import de.steinwedel.messagebox.MessageBox;
import domain.Shift;
import domain.Shop;
@SuppressWarnings(“serial”)
@Theme(“dashboard”)
@PreserveOnRefresh
@Widgetset(“com.hitachi.ui.widgetset.WcisWidgetset”)
public class MyprojectweldingUI extends UI {
public static String shopnumber=null;
public static String shopnumberForShopStore=null;
public static String shiftValue=null;
public TextField custom_jobnumber=null;
TextField emailaddress=null;
CssLayout root = new CssLayout();
TextField oldpassword=null;
TextField Newpassword=null;
PasswordField newconfirmpasswrd=null;
VerticalLayout loginLayout;
private Navigator nav;
CssLayout menu = new CssLayout();
CssLayout content = new CssLayout();
HorizontalLayout fields = null;
HashMap<String, Class<? extends View>> adminroutes = new HashMap<String, Class<? extends View>>() {
{
setImmediate(true);
put("/dashboard", DashboardView.class);
put("/MasterCreation",(Class<? extends View>) AdminTabs.class);
put("/ImportContacts", (Class<? extends View>) ImportContacts.class);
put("/TimelineActivity",(Class<? extends View>) TimelineActivity.class);
put("/Reports", (Class<? extends View>) Reports_Tabsheet.class);
}
};
HashMap<String, Class<? extends View>> routes = new HashMap<String, Class<? extends View>>() {
{
setImmediate(true);
put("/dashboard", DashboardView.class);
put("/Customer", CustomerCreation.class);
put("/JobManager", JobManagement.class);
put("/SeamManager", (Class<? extends View>) SeamManagement.class);
put("/PRManager", (Class<? extends View>) PRManagement.class);
put("/WPS", (Class<? extends View>) WpsView.class);
put("/TimelineActivity",(Class<? extends View>) TimelineActivity.class);
put("/Reports", (Class<? extends View>) Reports_Tabsheet.class);
// put("/ReportsGraphs", (Class<? extends View>) ReportsPanel.class);
}
};
HashMap<String, Class<? extends View>> engineerroutes = new HashMap<String, Class<? extends View>>() {
{
setImmediate(true);
put("/dashboard", DashboardView.class);
put("/SeamManager", (Class<? extends View>) EngineerSeamManagement.class);
put("/PRManager", (Class<? extends View>) EngineerPRManagement.class);
put("/WPS", (Class<? extends View>) WpsView.class);
put("/TimelineActivity",(Class<? extends View>) TimelineActivity.class);
put("/Reports", (Class<? extends View>) Reports_Tabsheet.class);
}
};
HashMap<String, Class<? extends View>> supervisorroutes = new HashMap<String, Class<? extends View>>() {
{
setImmediate(true);
put("/dashboard", DashboardView.class);
put("/AssignSeams",(Class<? extends View>) SupervisorTabsheet.class);
put("/WPS", (Class<? extends View>) WpsView.class);
put("/TimelineActivity",(Class<? extends View>) TimelineActivity.class);
put("/Reports", (Class<? extends View>) Reports_Tabsheet.class);
}
};
HashMap<String, Class<? extends View>> mainshoproutes = new HashMap<String, Class<? extends View>>() {
{
setImmediate(true);
put("/dashboard", DashboardView.class);
put("/AssignedJobs",(Class<? extends View>) MainstoreJob.class);
put("/TimelineActivity",(Class<? extends View>) TimelineActivity.class);
put("/Reports", (Class<? extends View>) Reports_Tabsheet.class);
}
};
HashMap<String, Class<? extends View>> shopstoreroutes = new HashMap<String, Class<? extends View>>() {
{
setImmediate(true);
put("/dashboard", DashboardView.class);
put("/MaterialManager",(Class<? extends View>) ShopStoreTabsheet.class);
put("/TimelineActivity",(Class<? extends View>) TimelineActivity.class);
put("/Reports", (Class<? extends View>) Reports_Tabsheet.class);
}
};
HashMap<String, Class<? extends View>> wqtroutes = new HashMap<String, Class<? extends View>>() {
{
setImmediate(true);
put("/dashboard", DashboardView.class);
put("/EmployeeManager", EmployeeManager.class);
put("/WelderMasterList",(Class<? extends View>) Weldermaster.class);
put("/TimelineActivity",(Class<? extends View>) TimelineActivity.class);
put("/Reports", (Class<? extends View>) Reports_Tabsheet.class);
}
};
HashMap<String, Button> viewNameToMenuButton = new HashMap<String, Button>();
@Override
protected void init(VaadinRequest request) {
setImmediate(true);
setLocale(Locale.US);
setContent(root);
root.addStyleName("root");
root.setSizeFull();
Label bg = new Label();
bg.setSizeUndefined();
bg.addStyleName("login-bg");
root.addComponent(bg);
buildLoginView(false);
}
private void buildLoginView(boolean exit) {
if (exit) {
root.removeAllComponents();
}
addStyleName("login");
loginLayout = new VerticalLayout();
loginLayout.setSizeFull();
loginLayout.addStyleName("login-layout");
root.addComponent(loginLayout);
final CssLayout loginPanel = new CssLayout();
loginPanel.addStyleName("login-panel");
HorizontalLayout labels = new HorizontalLayout();
labels.setWidth("100%");
labels.setMargin(true);
labels.addStyleName("labels");
loginPanel.addComponent(labels);
Label welcome = new Label("Welding Process Automation System");
welcome.setSizeUndefined();
welcome.addStyleName("h4");
labels.addComponent(welcome);
labels.setComponentAlignment(welcome, Alignment.MIDDLE_LEFT);
Label title = new Label("");
title.setSizeUndefined();
title.addStyleName("h2");
title.addStyleName("light");
labels.addComponent(title);
labels.setComponentAlignment(title, Alignment.MIDDLE_RIGHT);
final HorizontalLayout fields = new HorizontalLayout();
fields.setSpacing(true);
fields.setMargin(true);
fields.addStyleName("fields");
final TextField username = new TextField("Username");
username.focus();
fields.addComponent(username);
final PasswordField password = new PasswordField("Password");
fields.addComponent(password);
final Button signin = new Button("Sign In");
signin.addStyleName("default");
fields.addComponent(signin);
fields.setComponentAlignment(signin, Alignment.BOTTOM_LEFT);
final ShortcutListener enter = new ShortcutListener("Sign In",
KeyCode.ENTER, null) {
@Override
public void handleAction(Object sender, Object target) {
signin.click();
}
};
final Label error = new Label(
"username or password are incorrect",
ContentMode.HTML);
final Label shopstore_warning = new Label(
"Please select the shop number",
ContentMode.HTML);
final Label supervisor_warning = new Label(
"Please select the inputs",
ContentMode.HTML);
final Label warning = new Label(
"Please enter username and password",
ContentMode.HTML);
signin.addClickListener(new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
setImmediate(true);
loginPanel.removeComponent(error);
loginPanel.removeComponent(shopstore_warning);
loginPanel.removeComponent(supervisor_warning);
loginPanel.removeComponent(warning);
if (!username.getValue().equals("")&& !password.getValue().equals("")){
String result=new MainController().getLogin(username.getValue(),password.getValue());
if(result.equals("Wtd_Engineer")){
wtdEngineerViewView();
}else if(result.equals("Wtd_Manager")){
buildMainView();
}else if(result.equals("Supervisor")){
fields.removeComponent(username);
fields.removeComponent(password);
fields.removeComponent(signin);
final ComboBox shop = new ComboBox("ShopNo");
List<Shop> shops= new WTDManagerController().getShopnumbers();
try {
for(Shop shopnum:shops){
shop.addItem(shopnum.getShopnumber());
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
shop.focus();
fields.addComponent(shop);
final ComboBox shift = new ComboBox("Shift");
shift.setWidth("200px");
shift.setInputPrompt("Select the Shift");
List<Shift> shifts= new WTDManagerController().getShifts();
for(Shift shft:shifts){
shift.addItem(shft.getShiftnumber());
}
fields.addComponent(shift);
fields.addComponent(signin);
signin.setImmediate(true);
fields.setComponentAlignment(signin, Alignment.BOTTOM_LEFT);
signin.addClickListener(new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
if(shop.getValue()==null || shift.getValue()==null){
fields.removeComponent(shop);
fields.removeComponent(shift);
//MessageBox.showPlain(Icon.WARN, "Supervisor Login", "Please select Inputs", ButtonId.OK);
supervisor_warning.addStyleName("error");
supervisor_warning.setSizeUndefined();
supervisor_warning.addStyleName("light");
supervisor_warning.addStyleName("v-animate-reveal");
loginPanel.addComponent(supervisor_warning);
}else {
String result=new SuperVisorController().validateShopNumber(shop.getValue().toString(),shift.getValue().toString());
if(result.equals("failed")){
Notification.show("Invalid shop Number");
MessageBox.showPlain(Icon.ERROR, "Bad Credentials", "Please enter proper credentials", ButtonId.OK);
fields.removeComponent(shop);
fields.removeComponent(shift);
}else{
supervisorView();
System.out.println("assgn shop number::::::::::"+shop.getValue().toString());
shopnumber=shop.getValue().toString();
shiftValue=shift.getValue().toString();
}
}
}
});}
else if(result.equals("MainShopStore")){
mainShopStoreView();
}
else if(result.equals("ShopStore")){
fields.removeComponent(username);
fields.removeComponent(password);
fields.removeComponent(signin);
final ComboBox shop = new ComboBox("ShopNo");
try {
List<Shop> shops= new WTDManagerController().getShopnumbers();
for(Shop shopnum:shops){
shop.addItem(shopnum.getShopnumber());
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
shop.setNullSelectionAllowed(false);
shop.setImmediate(true);
shop.focus();
fields.addComponent(shop);
fields.addComponent(signin);
fields.setComponentAlignment(signin, Alignment.BOTTOM_LEFT);
signin.setImmediate(true);
signin.addClickListener(new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
if(shop.getValue()!=null){
String result=new SuperVisorController().shopstoreLogincheck(shop.getValue().toString());
if(result.equals("failed")){
//System.out.println("in if");
//Notification.show("Invalid shop Number");
MessageBox.showPlain(Icon.ERROR, "Bad credentials", "Please valid shop number", ButtonId.OK);
fields.removeComponent(shop);
}else{
shopstoreView();
System.out.println("assgn shop number::::::::::"+shop.getValue().toString());
shopnumberForShopStore=shop.getValue().toString();
}
}else {
System.out.println("in else");
fields.removeComponent(shop);
//MessageBox.showPlain(Icon.WARN, "Shopstore loggin", "Please select a shop", ButtonId.OK);
shopstore_warning.addStyleName("error");
shopstore_warning.setSizeUndefined();
shopstore_warning.addStyleName("light");
shopstore_warning.addStyleName("v-animate-reveal");
loginPanel.addComponent(shopstore_warning);
}
}
});}
else if(result.equals("Wqt")){
wqtView();
}else if(result.equalsIgnoreCase("admin")){
AdminView();
}
else {
error.addStyleName("error");
error.setSizeUndefined();
error.addStyleName("light");
error.addStyleName("v-animate-reveal");
loginPanel.addComponent(error);
username.focus();
}
}else{
warning.addStyleName("error");
warning.setSizeUndefined();
warning.addStyleName("light");
warning.addStyleName("v-animate-reveal");
loginPanel.addComponent(warning);
username.focus();
}
}
});
signin.addShortcutListener(enter);
loginPanel.addComponent(fields);
Button forgetpassword=new Button("Forgot Password??",new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
// TODO Auto-generated method stub
final Window passwordwin=new Window("Password Verification");
passwordwin.setHeight("200px");
passwordwin.setWidth("350px");
VerticalLayout emaillayout=new VerticalLayout();
emaillayout.setSpacing(true);
emaillayout.setMargin(true);
FormLayout passwordform=new FormLayout();
emailaddress=new TextField("Enter EmailAddress");
passwordform.addComponent(emailaddress);
emailaddress.addValueChangeListener(new ValueChangeListener() {
@SuppressWarnings("static-access")
@Override
public void valueChange(ValueChangeEvent event) {
setImmediate(true);
Boolean result=new Validation().validateemail(emailaddress.getValue());
if(result==false){
MessageBox.showPlain(Icon.ERROR, "Email Validation", "Invalid Email Address", ButtonId.OK);
emailaddress.setValue("");
}
}
});
emaillayout.addComponent(passwordform);
Button okmailbtn=new Button("ok",new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
if(emailaddress.getValue()!=""){
String emailid=emailaddress.getValue().toString();
WTDEngineerController _wtdengineer=new WTDEngineerController();
List<String> password=_wtdengineer.getPassword(emailid);
if(password.size()==0){
MessageBox.showPlain(Icon.INFO, "Paasword Verification", " Please enter Correct Emailid ", ButtonId.OK);
emailaddress.setValue("");
}else{
String result=password.get(0);
String plainAfter=null;
try {
plainAfter=new CryptoUtil().decrypt(CryptoUtil.key, result);
} catch (InvalidKeyException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (NoSuchAlgorithmException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InvalidKeySpecException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (NoSuchPaddingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InvalidAlgorithmParameterException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalBlockSizeException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (BadPaddingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
passwordwin.close();
new PasswordRecoveryEmail().Mail(emailid, plainAfter);
MessageBox.showPlain(Icon.INFO, "Paasword Verification", " Your Password is sent to Your mail.Please check it", ButtonId.OK);
}
// TODO Auto-generated method stub
/*if(!(emailaddress==null)){
MessageBox.showPlain(Icon.WARN, "Paasword Verification", "The Email address u entered is invalid", ButtonId.OK);
}
else{
MessageBox.showPlain(Icon.INFO, "Paasword Verificationr", " The Password is", ButtonId.OK);
}*/
}else{
MessageBox.showPlain(Icon.WARN, "Forgot password", "Please fill Emailid", ButtonId.OK);
}
}
});
emaillayout.addComponent(okmailbtn);
okmailbtn.setStyleName(Runo.BUTTON_SMALL);
passwordwin.setContent(emaillayout);
passwordwin.center();
UI.getCurrent().addWindow(passwordwin);
}
});
loginPanel.addComponent(forgetpassword);
forgetpassword.setStyleName(Runo.BUTTON_LINK);
loginLayout.addComponent(loginPanel);
loginLayout.setComponentAlignment(loginPanel, Alignment.MIDDLE_CENTER);
}
private void buildMainView() {
setImmediate(true);
try
{
nav = new Navigator(this, content);
for (String route : routes.keySet()) {
nav.addView(route, routes.get(route));
}
removeStyleName("login");
root.removeComponent(loginLayout);
root.addComponent(new HorizontalLayout() {
{
setSizeFull();
addStyleName("main-view");
addComponent(new VerticalLayout() {
{
addStyleName("sidebar");
setWidth(null);
setHeight("100%");
// Branding element
addComponent(new CssLayout() {
{
addStyleName("branding");
Label logo = new Label(
"<span>WTD Manager </span> Dashboard",
ContentMode.HTML);
logo.setSizeUndefined();
addComponent(logo);
}
});
// Main menu
addComponent(menu);
setExpandRatio(menu, 1);
// User menu
addComponent(new VerticalLayout() {
{
setSizeUndefined();
addStyleName("user");
Image profilePic = new Image(
null,
new ThemeResource("img/profile-pic.png"));
profilePic.setWidth("34px");
addComponent(profilePic);
Label userName=null;
try {
userName = new Label(VaadinSession.getCurrent().getSession().getAttribute("username").toString());
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
userName.setSizeUndefined();
addComponent(userName);
Command cmd = new Command() {
@Override
public void menuSelected(
MenuItem selectedItem) {
Notification
.show("Not implemented in this demo");
}
};
MenuBar settings = new MenuBar();
MenuItem settingsMenu = settings.addItem("",
null);
settingsMenu.setStyleName("icon-cog");
settingsMenu.addItem("Settings", cmd);
settingsMenu.addItem("Preferences", cmd);
settingsMenu.addSeparator();
settingsMenu.addItem("Change Password", new Command() {
public void menuSelected(MenuItem selectedItem) {
final Window subaccntwin=new Window("Change Account Settings");
subaccntwin.setHeight("330px");
subaccntwin.setWidth("400px");
VerticalLayout myacclayout=new VerticalLayout();
myacclayout.setSpacing(true);
myacclayout.setMargin(true);
Label Changepassword=new Label("<h4><b>Change Password</b></h4>",Label.CONTENT_XHTML);
myacclayout.addComponent(Changepassword);
FormLayout myaccform=new FormLayout();
myaccform.setSpacing(true);
myaccform.setMargin(true);
oldpassword =new TextField("OldPassword");
oldpassword.setImmediate(true);
oldpassword.addValueChangeListener(new ValueChangeListener() {
@Override
public void valueChange(ValueChangeEvent event) {
// TODO Auto-generated method stub
//Notification.show("text entered");
String username=null;
try {
username=VaadinSession.getCurrent().getSession().getAttribute("username").toString();
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
Boolean result=new WTDManagerController().checkPassowrd(username, oldpassword.getValue());
System.out.println("Is entered password is correct??"+result);
if(result==false){
MessageBox.showPlain(Icon.ERROR, "Password", "Please Enter Correct Password", ButtonId.OK);
oldpassword.setValue("");
}
}
});
Newpassword =new TextField("New Password");
Newpassword.setImmediate(true);
newconfirmpasswrd=new PasswordField("Confirm NewPassword");
newconfirmpasswrd.setImmediate(true);
myaccform.addComponent(oldpassword);
myaccform.addComponent(Newpassword);
myaccform.addComponent(newconfirmpasswrd);
newconfirmpasswrd.addValueChangeListener(new ValueChangeListener() {
@Override
public void valueChange(ValueChangeEvent event) {
// TODO Auto-generated method stub
if(!(Newpassword.getValue().toString().equals(newconfirmpasswrd.getValue().toString()))){
MessageBox.showPlain(Icon.ERROR, "Password", "New password and Confirm password must be same", ButtonId.OK);
Newpassword.setValue("");
newconfirmpasswrd.setValue("");
}
}
});
myacclayout.addComponent(myaccform);
HorizontalLayout btnaccounts=new HorizontalLayout();
btnaccounts.setSpacing(true);
btnaccounts.setMargin(true);
Button okaccbtn=new Button("Save",new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
// TODO Auto-generated method stub
try {
if(oldpassword.getValue()!="" || Newpassword.getValue()!="" || newconfirmpasswrd.getValue()!=""){
Boolean result=new WTDManagerController().updatePassword(oldpassword.getValue(), Newpassword.getValue(), VaadinSession.getCurrent().getSession().getAttribute("username").toString());
if(result==true){
MessageBox.showPlain(Icon.INFO, "Change Password", "Password Changed Successfully", ButtonId.OK);
subaccntwin.close();
}else{
MessageBox.showPlain(Icon.INFO, "Change Password", "Failed to change password", ButtonId.OK);
}
}else{
MessageBox.showPlain(Icon.INFO, "Change Password", "Please Fill all the fields", ButtonId.OK);
}
//subaccntwin.close();
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
});
btnaccounts.addComponent(okaccbtn);
okaccbtn.setStyleName(Runo.BUTTON_SMALL);
Button closeaccbtn=new Button("Close",new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
// TODO Auto-generated method stub
subaccntwin.close();
}
});
btnaccounts.addComponent(closeaccbtn);
closeaccbtn.setStyleName(Runo.BUTTON_SMALL);
myacclayout.addComponent(btnaccounts);
subaccntwin.setContent(myacclayout);
subaccntwin.center();
UI.getCurrent().addWindow(subaccntwin);
}
});
addComponent(settings);
Button exit = new NativeButton("Exit");
exit.addStyleName("icon-cancel");
exit.setDescription("Sign Out");
addComponent(exit);
exit.addClickListener(new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
System.out.println("manager Logged out");
//getUI().getSession().close();
VaadinSession.getCurrent().getSession().invalidate();
//VaadinSession.getCurrent().getSession().c;
getCurrent().getPage().setLocation("/WCIS");
buildLoginView(true);
System.out.println("Logged out");
}
});
}
});
}
});
// Content
addComponent(content);
content.setSizeFull();
content.addStyleName("view-content");
setExpandRatio(content, 1);
}
});
menu.removeAllComponents();
nav.navigateTo("/dashboard");
for (final String view : new String[] { "dashboard","Customer","JobManager", "SeamManager",
"PRManager","WPS","Reports","TimelineActivity"}) {
Button b = new NativeButton(view.substring(0, 1).toUpperCase()
+ view.substring(1).replace('-', ' '));
b.addStyleName("icon-" + view);
b.addClickListener(new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
clearMenuSelection();
event.getButton().addStyleName("selected");
if (!nav.getState().equals("/" + view))
try
{
nav.navigateTo("/" + view);
}
catch (Exception e) {
//getUI().getSession().close();
VaadinSession.getCurrent().getSession().invalidate();
getUI().getPage().setLocation("/WCIS");
e.printStackTrace();
UI.getCurrent().setComponentError(null);
}
}
});
if (view.equals("SeamManager")) {
DragAndDropWrapper reports = new DragAndDropWrapper(b);
reports.setDragStartMode(DragStartMode.NONE);
reports.setDropHandler(new DropHandler() {
@Override
public void drop(DragAndDropEvent event) {
clearMenuSelection();
viewNameToMenuButton.get("/SeamManager").addStyleName(
"selected");
autoCreateReport = true;
items = event.getTransferable();
nav.navigateTo("/SeamManager");
}
@Override
public AcceptCriterion getAcceptCriterion() {
return AcceptItem.ALL;
}
});
menu.addComponent(reports);
menu.addStyleName("no-vertical-drag-hints");
menu.addStyleName("no-horizontal-drag-hints");
} else {
menu.addComponent(b);
}
viewNameToMenuButton.put("/" + view, b);
}
menu.addStyleName("menu");
menu.setHeight("100%");
viewNameToMenuButton.get("/dashboard").setHtmlContentAllowed(true);
String f = Page.getCurrent().getUriFragment();
if (f != null && f.startsWith("!")) {
f = f.substring(1);
}
if (f == null || f.equals("") || f.equals("/")) {
nav.navigateTo("/dashboard");
menu.getComponent(0).addStyleName("selected");
} else {
nav.navigateTo(f);
viewNameToMenuButton.get(f).addStyleName("selected");
}
nav.addViewChangeListener(new ViewChangeListener() {
@Override
public boolean beforeViewChange(ViewChangeEvent event) {
return true;
}
@Override
public void afterViewChange(ViewChangeEvent event) {
View newView = event.getNewView();
}
});
}
catch(Exception e)
{
UI.getCurrent().setComponentError(null);
e.printStackTrace();
}
}
private void wtdEngineerViewView() {
setImmediate(true);
try
{
nav = new Navigator(this, content);
for (String route : engineerroutes.keySet()) {
nav.addView(route, engineerroutes.get(route));
}
removeStyleName("login");
root.removeComponent(loginLayout);
root.addComponent(new HorizontalLayout() {
{
setSizeFull();
addStyleName("main-view");
addComponent(new VerticalLayout() {
// Sidebar
{
addStyleName("sidebar");
setWidth(null);
setHeight("100%");
// Branding element
addComponent(new CssLayout() {
{
addStyleName("branding");
Label logo = new Label(
"<span>WTD Engineer</span> Dashboard",
ContentMode.HTML);
logo.setSizeUndefined();
addComponent(logo);
}
});
// Main menu
addComponent(menu);
setExpandRatio(menu, 1);
// User menu
addComponent(new VerticalLayout() {
{
setSizeUndefined();
addStyleName("user");
Image profilePic = new Image(
null,
new ThemeResource("img/profile-pic.png"));
profilePic.setWidth("34px");
addComponent(profilePic);
Label userName=null;
try {
userName = new Label(VaadinSession.getCurrent().getSession().getAttribute("username").toString());
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
userName.setSizeUndefined();
addComponent(userName);
Command cmd = new Command() {
@Override
public void menuSelected(
MenuItem selectedItem) {
Notification
.show("Not implemented in this demo");
}
};
MenuBar settings = new MenuBar();
MenuItem settingsMenu = settings.addItem("",
null);
settingsMenu.setStyleName("icon-cog");
settingsMenu.addItem("Settings", cmd);
settingsMenu.addItem("Preferences", cmd);
settingsMenu.addSeparator();
settingsMenu.addItem("Change Password", new Command() {
public void menuSelected(MenuItem selectedItem) {
final Window subaccntwin=new Window("Change Account Settings");
subaccntwin.setHeight("330px");
subaccntwin.setWidth("400px");
VerticalLayout myacclayout=new VerticalLayout();
myacclayout.setSpacing(true);
myacclayout.setMargin(true);
Label Changepassword=new Label("<h4><b>Change Password</b></h4>",Label.CONTENT_XHTML);
myacclayout.addComponent(Changepassword);
FormLayout myaccform=new FormLayout();
myaccform.setSpacing(true);
myaccform.setMargin(true);
oldpassword =new TextField("OldPassword");
oldpassword.setImmediate(true);
oldpassword.addValueChangeListener(new ValueChangeListener() {
@Override
public void valueChange(ValueChangeEvent event) {
// TODO Auto-generated method stub
//Notification.show("text entered");
try {
Boolean result=new WTDManagerController().checkPassowrd(VaadinSession.getCurrent().getSession().getAttribute("username").toString(), oldpassword.getValue());
System.out.println("Is entered password is correct??"+result);
if(result==false){
MessageBox.showPlain(Icon.ERROR, "Password", "Please Enter Correct Password", ButtonId.OK);
oldpassword.setValue("");
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
});
Newpassword =new TextField("New Password");
Newpassword.setImmediate(true);
newconfirmpasswrd=new PasswordField("Confirm NewPassword");
newconfirmpasswrd.setImmediate(true);
myaccform.addComponent(oldpassword);
myaccform.addComponent(Newpassword);
myaccform.addComponent(newconfirmpasswrd);
newconfirmpasswrd.addValueChangeListener(new ValueChangeListener() {
@Override
public void valueChange(ValueChangeEvent event) {
// TODO Auto-generated method stub
if(!(Newpassword.getValue().toString().equals(newconfirmpasswrd.getValue().toString()))){
MessageBox.showPlain(Icon.ERROR, "Password", "New password and Confirm password must be same", ButtonId.OK);
Newpassword.setValue("");
newconfirmpasswrd.setValue("");
}
}
});
myacclayout.addComponent(myaccform);
HorizontalLayout btnaccounts=new HorizontalLayout();
btnaccounts.setSpacing(true);
btnaccounts.setMargin(true);
Button okaccbtn=new Button("Save",new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
// TODO Auto-generated method stub
String username=null;
try {
username=VaadinSession.getCurrent().getSession().getAttribute("username").toString();
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
if(oldpassword.getValue()!="" || Newpassword.getValue()!="" || newconfirmpasswrd.getValue()!=""){
Boolean result=new WTDManagerController().updatePassword(oldpassword.getValue(), Newpassword.getValue(), username);
if(result==true){
MessageBox.showPlain(Icon.INFO, "Change Password", "Password Changed Successfully", ButtonId.OK);
subaccntwin.close();
}else{
MessageBox.showPlain(Icon.INFO, "Change Password", "Failed to change password", ButtonId.OK);
}
}else{
MessageBox.showPlain(Icon.INFO, "Change Password", "Please Fill all the fields", ButtonId.OK);
}
//subaccntwin.close();
}
});
btnaccounts.addComponent(okaccbtn);
okaccbtn.setStyleName(Runo.BUTTON_SMALL);
Button closeaccbtn=new Button("Close",new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
// TODO Auto-generated method stub
subaccntwin.close();
}
});
btnaccounts.addComponent(closeaccbtn);
closeaccbtn.setStyleName(Runo.BUTTON_SMALL);
myacclayout.addComponent(btnaccounts);
subaccntwin.setContent(myacclayout);
subaccntwin.center();
UI.getCurrent().addWindow(subaccntwin);
}
});
addComponent(settings);
Button exit = new NativeButton("Exit");
exit.addStyleName("icon-cancel");
exit.setDescription("Sign Out");
addComponent(exit);
exit.addClickListener(new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
try {
System.out.println("Engineer Logged out");
//UI.getCurrent().getSession().close();
//getUI().getSession().close();
//VaadinSession.getCurrent().getSession().invalidate();
VaadinSession.getCurrent().getSession().invalidate();
getUI().getPage().setLocation("/WCIS");
buildLoginView(true);
System.out.println("Logged out");
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
});
}
});
}
});
// Content
addComponent(content);
content.setSizeFull();
content.addStyleName("view-content");
setExpandRatio(content, 1);
}
});
menu.removeAllComponents();
nav.navigateTo("/dashboard");
for (final String view : new String[] { "dashboard", "SeamManager",
"PRManager","WPS","TimelineActivity","Reports" }) {
Button b = new NativeButton(view.substring(0, 1).toUpperCase()
+ view.substring(1).replace('-', ' '));
b.addStyleName("icon-" + view);
b.addClickListener(new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
clearMenuSelection();
event.getButton().addStyleName("selected");
if (!nav.getState().equals("/" + view))
try
{
nav.navigateTo("/" + view);
}
catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
UI.getCurrent().setComponentError(null);
}
}
});
if (view.equals("SeamManager")) {
// Add drop target to reports button
DragAndDropWrapper reports = new DragAndDropWrapper(b);
reports.setDragStartMode(DragStartMode.NONE);
reports.setDropHandler(new DropHandler() {
@Override
public void drop(DragAndDropEvent event) {
clearMenuSelection();
viewNameToMenuButton.get("/SeamManager").addStyleName(
"selected");
autoCreateReport = true;
items = event.getTransferable();
nav.navigateTo("/SeamManager");
}
@Override
public AcceptCriterion getAcceptCriterion() {
return AcceptItem.ALL;
}
});
menu.addComponent(reports);
menu.addStyleName("no-vertical-drag-hints");
menu.addStyleName("no-horizontal-drag-hints");
} else {
menu.addComponent(b);
}
viewNameToMenuButton.put("/" + view, b);
}
menu.addStyleName("menu");
menu.setHeight("100%");
viewNameToMenuButton.get("/dashboard").setHtmlContentAllowed(true);
String f = Page.getCurrent().getUriFragment();
if (f != null && f.startsWith("!")) {
f = f.substring(1);
}
if (f == null || f.equals("") || f.equals("/")) {
nav.navigateTo("/dashboard");
menu.getComponent(0).addStyleName("selected");
} else {
nav.navigateTo(f);
viewNameToMenuButton.get(f).addStyleName("selected");
}
nav.addViewChangeListener(new ViewChangeListener() {
@Override
public boolean beforeViewChange(ViewChangeEvent event) {
return true;
}
@Override
public void afterViewChange(ViewChangeEvent event) {
View newView = event.getNewView();
}
});
}
catch(Exception e)
{
e.printStackTrace();
UI.getCurrent().setComponentError(null);
}
}
private void supervisorView() {
setImmediate(true);
try
{
nav = new Navigator(this, content);
for (String route : supervisorroutes.keySet()) {
nav.addView(route, supervisorroutes.get(route));
}
removeStyleName("login");
root.removeComponent(loginLayout);
root.addComponent(new HorizontalLayout() {
{
setSizeFull();
addStyleName("main-view");
addComponent(new VerticalLayout() {
// Sidebar
{
addStyleName("sidebar");
setWidth(null);
setHeight("100%");
// Branding element
addComponent(new CssLayout() {
{
addStyleName("branding");
Label logo = new Label(
"<span>Supervisor</span> Dashboard",
ContentMode.HTML);
logo.setSizeUndefined();
addComponent(logo);
}
});
// Main menu
addComponent(menu);
setExpandRatio(menu, 1);
// User menu
addComponent(new VerticalLayout() {
{
setSizeUndefined();
addStyleName("user");
Image profilePic = new Image(
null,
new ThemeResource("img/profile-pic.png"));
profilePic.setWidth("34px");
addComponent(profilePic);
Label userName=null;
try {
userName = new Label(VaadinSession.getCurrent().getSession().getAttribute("username").toString());
} catch (Exception e) {
// TODO: handle exception
}
userName.setSizeUndefined();
addComponent(userName);
Command cmd = new Command() {
@Override
public void menuSelected(
MenuItem selectedItem) {
Notification
.show("Not implemented in this demo");
}
};
MenuBar settings = new MenuBar();
MenuItem settingsMenu = settings.addItem("",
null);
settingsMenu.setStyleName("icon-cog");
settingsMenu.addItem("Settings", cmd);
settingsMenu.addItem("Preferences", cmd);
settingsMenu.addSeparator();
settingsMenu.addItem("Change Password", new Command() {
public void menuSelected(MenuItem selectedItem) {
final Window subaccntwin=new Window("Change Account Settings");
subaccntwin.setHeight("330px");
subaccntwin.setWidth("400px");
VerticalLayout myacclayout=new VerticalLayout();
myacclayout.setSpacing(true);
myacclayout.setMargin(true);
Label Changepassword=new Label("<h4><b>Change Password</b></h4>",Label.CONTENT_XHTML);
myacclayout.addComponent(Changepassword);
FormLayout myaccform=new FormLayout();
myaccform.setSpacing(true);
myaccform.setMargin(true);
oldpassword =new TextField("OldPassword");
oldpassword.setImmediate(true);
oldpassword.addValueChangeListener(new ValueChangeListener() {
@Override
public void valueChange(ValueChangeEvent event) {
// TODO Auto-generated method stub
//Notification.show("text entered");
try {
Boolean result=new WTDManagerController().checkPassowrd(VaadinSession.getCurrent().getSession().getAttribute("username").toString(), oldpassword.getValue());
System.out.println("Is entered password is correct??"+result);
if(result==false){
MessageBox.showPlain(Icon.ERROR, "Password", "Please Enter Correct Password", ButtonId.OK);
oldpassword.setValue("");
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
});
Newpassword =new TextField("New Password");
Newpassword.setImmediate(true);
newconfirmpasswrd=new PasswordField("Confirm NewPassword");
newconfirmpasswrd.setImmediate(true);
myaccform.addComponent(oldpassword);
myaccform.addComponent(Newpassword);
myaccform.addComponent(newconfirmpasswrd);
newconfirmpasswrd.addValueChangeListener(new ValueChangeListener() {
@Override
public void valueChange(ValueChangeEvent event) {
// TODO Auto-generated method stub
if(!(Newpassword.getValue().toString().equals(newconfirmpasswrd.getValue().toString()))){
MessageBox.showPlain(Icon.ERROR, "Password", "New password and Confirm password must be same", ButtonId.OK);
Newpassword.setValue("");
newconfirmpasswrd.setValue("");
}
}
});
myacclayout.addComponent(myaccform);
HorizontalLayout btnaccounts=new HorizontalLayout();
btnaccounts.setSpacing(true);
btnaccounts.setMargin(true);
Button okaccbtn=new Button("Save",new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
// TODO Auto-generated method stub
String username=null;
try {
username=VaadinSession.getCurrent().getSession().getAttribute("username").toString();
} catch (Exception e) {
// TODO: handle exception
}
if(oldpassword.getValue()!="" || Newpassword.getValue()!="" || newconfirmpasswrd.getValue()!=""){
Boolean result=new WTDManagerController().updatePassword(oldpassword.getValue(), Newpassword.getValue(), username);
if(result==true){
MessageBox.showPlain(Icon.INFO, "Change Password", "Password Changed Successfully", ButtonId.OK);
subaccntwin.close();
}else{
MessageBox.showPlain(Icon.INFO, "Change Password", "Failed to change password", ButtonId.OK);
}
}else{
MessageBox.showPlain(Icon.INFO, "Change Password", "Please Fill all the fields", ButtonId.OK);
}
//subaccntwin.close();
}
});
btnaccounts.addComponent(okaccbtn);
okaccbtn.setStyleName(Runo.BUTTON_SMALL);
Button closeaccbtn=new Button("Close",new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
// TODO Auto-generated method stub
subaccntwin.close();
}
});
btnaccounts.addComponent(closeaccbtn);
closeaccbtn.setStyleName(Runo.BUTTON_SMALL);
myacclayout.addComponent(btnaccounts);
subaccntwin.setContent(myacclayout);
subaccntwin.center();
UI.getCurrent().addWindow(subaccntwin);
}
});
addComponent(settings);
Button exit = new NativeButton("Exit");
exit.addStyleName("icon-cancel");
exit.setDescription("Sign Out");
addComponent(exit);
exit.addClickListener(new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
try {
System.out.println("supervisor Logged out");
//UI.getCurrent().getSession().close();
//getUI().getSession().close();
VaadinSession.getCurrent().getSession().invalidate();
getUI().getPage().setLocation("/WCIS");
buildLoginView(true);
System.out.println("Logged out");
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
});
}
});
}
});
// Content
addComponent(content);
content.setSizeFull();
content.addStyleName("view-content");
setExpandRatio(content, 1);
}
});
menu.removeAllComponents();
nav.navigateTo("/dashboard");
for (final String view : new String[] { "dashboard", "AssignSeams","WPS","TimelineActivity","Reports"
}) {
Button b = new NativeButton(view.substring(0, 1).toUpperCase()
+ view.substring(1).replace('-', ' '));
b.addStyleName("icon-" + view);
b.addClickListener(new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
clearMenuSelection();
event.getButton().addStyleName("selected");
if (!nav.getState().equals("/" + view))
try
{
nav.navigateTo("/" + view);
}
catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
UI.getCurrent().setComponentError(null);
}
}
});
if (view.equals("AssignSeams")) {
// Add drop target to reports button
DragAndDropWrapper reports = new DragAndDropWrapper(b);
reports.setDragStartMode(DragStartMode.NONE);
reports.setDropHandler(new DropHandler() {
@Override
public void drop(DragAndDropEvent event) {
clearMenuSelection();
viewNameToMenuButton.get("/AssignSeams").addStyleName(
"selected");
autoCreateReport = true;
items = event.getTransferable();
nav.navigateTo("/AssignSeams");
}
@Override
public AcceptCriterion getAcceptCriterion() {
return AcceptItem.ALL;
}
});
menu.addComponent(reports);
menu.addStyleName("no-vertical-drag-hints");
menu.addStyleName("no-horizontal-drag-hints");
} else {
menu.addComponent(b);
}
viewNameToMenuButton.put("/" + view, b);
}
menu.addStyleName("menu");
menu.setHeight("100%");
viewNameToMenuButton.get("/dashboard").setHtmlContentAllowed(true);
String f = Page.getCurrent().getUriFragment();
if (f != null && f.startsWith("!")) {
f = f.substring(1);
}
if (f == null || f.equals("") || f.equals("/")) {
nav.navigateTo("/dashboard");
menu.getComponent(0).addStyleName("selected");
} else {
nav.navigateTo(f);
viewNameToMenuButton.get(f).addStyleName("selected");
}
nav.addViewChangeListener(new ViewChangeListener() {
@Override
public boolean beforeViewChange(ViewChangeEvent event) {
return true;
}
@Override
public void afterViewChange(ViewChangeEvent event) {
View newView = event.getNewView();
}
});
}
catch(Exception e)
{
e.printStackTrace();
UI.getCurrent().setComponentError(null);
}
}
private void shopstoreView() {
setImmediate(true);
try
{
nav = new Navigator(this, content);
for (String route : shopstoreroutes.keySet()) {
nav.addView(route, shopstoreroutes.get(route));
}
// helpManager.closeAll();
removeStyleName("login");
root.removeComponent(loginLayout);
root.addComponent(new HorizontalLayout() {
{
setSizeFull();
addStyleName("main-view");
addComponent(new VerticalLayout() {
// Sidebar
{
addStyleName("sidebar");
setWidth(null);
setHeight("100%");
// Branding element
addComponent(new CssLayout() {
{
addStyleName("branding");
Label logo = new Label(
"<span>ShopStore</span> Dashboard",
ContentMode.HTML);
logo.setSizeUndefined();
addComponent(logo);
}
});
// Main menu
addComponent(menu);
setExpandRatio(menu, 1);
// User menu
addComponent(new VerticalLayout() {
{
setSizeUndefined();
addStyleName("user");
Image profilePic = new Image(
null,
new ThemeResource("img/profile-pic.png"));
profilePic.setWidth("34px");
addComponent(profilePic);
Label userName=null;
try {
userName = new Label(VaadinSession.getCurrent().getSession().getAttribute("username").toString());
} catch (Exception e) {
// TODO: handle exception
}
userName.setSizeUndefined();
addComponent(userName);
Command cmd = new Command() {
@Override
public void menuSelected(
MenuItem selectedItem) {
Notification
.show("Not implemented in this demo");
}
};
MenuBar settings = new MenuBar();
MenuItem settingsMenu = settings.addItem("",
null);
settingsMenu.setStyleName("icon-cog");
settingsMenu.addItem("Settings", cmd);
settingsMenu.addItem("Preferences", cmd);
settingsMenu.addSeparator();
settingsMenu.addItem("Change Password", new Command() {
public void menuSelected(MenuItem selectedItem) {
final Window subaccntwin=new Window("Change Account Settings");
subaccntwin.setHeight("330px");
subaccntwin.setWidth("400px");
VerticalLayout myacclayout=new VerticalLayout();
myacclayout.setSpacing(true);
myacclayout.setMargin(true);
Label Changepassword=new Label("<h4><b>Change Password</b></h4>",Label.CONTENT_XHTML);
myacclayout.addComponent(Changepassword);
FormLayout myaccform=new FormLayout();
myaccform.setSpacing(true);
myaccform.setMargin(true);
oldpassword =new TextField("OldPassword");
oldpassword.setImmediate(true);
oldpassword.addValueChangeListener(new ValueChangeListener() {
@Override
public void valueChange(ValueChangeEvent event) {
// TODO Auto-generated method stub
//Notification.show("text entered");
try {
Boolean result=new WTDManagerController().checkPassowrd(VaadinSession.getCurrent().getSession().getAttribute("username").toString(), oldpassword.getValue());
System.out.println("Is entered password is correct??"+result);
if(result==false){
MessageBox.showPlain(Icon.ERROR, "Password", "Please Enter Correct Password", ButtonId.OK);
oldpassword.setValue("");
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
});
Newpassword =new TextField("New Password");
Newpassword.setImmediate(true);
newconfirmpasswrd=new PasswordField("Confirm NewPassword");
newconfirmpasswrd.setImmediate(true);
myaccform.addComponent(oldpassword);
myaccform.addComponent(Newpassword);
myaccform.addComponent(newconfirmpasswrd);
newconfirmpasswrd.addValueChangeListener(new ValueChangeListener() {
@Override
public void valueChange(ValueChangeEvent event) {
// TODO Auto-generated method stub
if(!(Newpassword.getValue().toString().equals(newconfirmpasswrd.getValue().toString()))){
MessageBox.showPlain(Icon.ERROR, "Password", "New password and Confirm password must be same", ButtonId.OK);
Newpassword.setValue("");
newconfirmpasswrd.setValue("");
}
}
});
myacclayout.addComponent(myaccform);
HorizontalLayout btnaccounts=new HorizontalLayout();
btnaccounts.setSpacing(true);
btnaccounts.setMargin(true);
Button okaccbtn=new Button("Save",new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
// TODO Auto-generated method stub
String username=null;
try {
username=VaadinSession.getCurrent().getSession().getAttribute("username").toString();
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
if(oldpassword.getValue()!="" || Newpassword.getValue()!="" || newconfirmpasswrd.getValue()!=""){
Boolean result=new WTDManagerController().updatePassword(oldpassword.getValue(), Newpassword.getValue(),username );
if(result==true){
MessageBox.showPlain(Icon.INFO, "Change Password", "Password Changed Successfully", ButtonId.OK);
subaccntwin.close();
}else{
MessageBox.showPlain(Icon.INFO, "Change Password", "Failed to change password", ButtonId.OK);
}
}else{
MessageBox.showPlain(Icon.INFO, "Change Password", "Please Fill all the fields", ButtonId.OK);
}
//subaccntwin.close();
}
});
btnaccounts.addComponent(okaccbtn);
okaccbtn.setStyleName(Runo.BUTTON_SMALL);
Button closeaccbtn=new Button("Close",new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
// TODO Auto-generated method stub
subaccntwin.close();
}
});
btnaccounts.addComponent(closeaccbtn);
closeaccbtn.setStyleName(Runo.BUTTON_SMALL);
myacclayout.addComponent(btnaccounts);
subaccntwin.setContent(myacclayout);
subaccntwin.center();
UI.getCurrent().addWindow(subaccntwin);
}
});
addComponent(settings);
Button exit = new NativeButton("Exit");
exit.addStyleName("icon-cancel");
exit.setDescription("Sign Out");
addComponent(exit);
exit.addClickListener(new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
System.out.println("Logged out");
//getUI().getSession().close();
VaadinSession.getCurrent().getSession().invalidate();
getUI().getPage().setLocation("/WCIS");
buildLoginView(true);
System.out.println("Logged out");
}
});
}
});
}
});
// Content
addComponent(content);
content.setSizeFull();
content.addStyleName("view-content");
setExpandRatio(content, 1);
}
});
menu.removeAllComponents();
nav.navigateTo("/dashboard");
for (final String view : new String[] { "dashboard", "MaterialManager","TimelineActivity","Reports" }) {
Button b = new NativeButton(view.substring(0, 1).toUpperCase()
+ view.substring(1).replace('-', ' '));
b.addStyleName("icon-" + view);
b.addClickListener(new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
clearMenuSelection();
event.getButton().addStyleName("selected");
if (!nav.getState().equals("/" + view))
try
{
nav.navigateTo("/" + view);
}
catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
UI.getCurrent().setComponentError(null);
}
}
});
if (view.equals("MaterialManager")) {
// Add drop target to reports button
DragAndDropWrapper reports = new DragAndDropWrapper(b);
reports.setDragStartMode(DragStartMode.NONE);
reports.setDropHandler(new DropHandler() {
@Override
public void drop(DragAndDropEvent event) {
clearMenuSelection();
viewNameToMenuButton.get("/MaterialManager").addStyleName(
"selected");
autoCreateReport = true;
items = event.getTransferable();
nav.navigateTo("/MaterialManager");
}
@Override
public AcceptCriterion getAcceptCriterion() {
return AcceptItem.ALL;
}
});
menu.addComponent(reports);
menu.addStyleName("no-vertical-drag-hints");
menu.addStyleName("no-horizontal-drag-hints");
} else {
menu.addComponent(b);
}
viewNameToMenuButton.put("/" + view, b);
}
menu.addStyleName("menu");
menu.setHeight("100%");
viewNameToMenuButton.get("/dashboard").setHtmlContentAllowed(true);
String f = Page.getCurrent().getUriFragment();
if (f != null && f.startsWith("!")) {
f = f.substring(1);
}
if (f == null || f.equals("") || f.equals("/")) {
nav.navigateTo("/dashboard");
menu.getComponent(0).addStyleName("selected");
} else {
nav.navigateTo(f);
viewNameToMenuButton.get(f).addStyleName("selected");
}
nav.addViewChangeListener(new ViewChangeListener() {
@Override
public boolean beforeViewChange(ViewChangeEvent event) {
return true;
}
@Override
public void afterViewChange(ViewChangeEvent event) {
View newView = event.getNewView();
}
});
}
catch(Exception e)
{
e.printStackTrace();
UI.getCurrent().setComponentError(null);
}
}
private void wqtView() {
setImmediate(true);
try
{
nav = new Navigator(this, content);
for (String route : wqtroutes.keySet()) {
nav.addView(route, wqtroutes.get(route));
}
removeStyleName("login");
root.removeComponent(loginLayout);
root.addComponent(new HorizontalLayout() {
{
setSizeFull();
addStyleName("main-view");
addComponent(new VerticalLayout() {
// Sidebar
{
addStyleName("sidebar");
setWidth(null);
setHeight("100%");
// Branding element
addComponent(new CssLayout() {
{
addStyleName("branding");
Label logo = new Label(
"<span>WQT</span> Dashboard",
ContentMode.HTML);
logo.setSizeUndefined();
addComponent(logo);
}
});
// Main menu
addComponent(menu);
setExpandRatio(menu, 1);
// User menu
addComponent(new VerticalLayout() {
{
setSizeUndefined();
addStyleName("user");
Image profilePic = new Image(
null,
new ThemeResource("img/profile-pic.png"));
profilePic.setWidth("34px");
addComponent(profilePic);
Label userName=null;
try {
userName = new Label(VaadinSession.getCurrent().getSession().getAttribute("username").toString());
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
userName.setSizeUndefined();
addComponent(userName);
Command cmd = new Command() {
@Override
public void menuSelected(
MenuItem selectedItem) {
Notification
.show("Not implemented in this demo");
}
};
MenuBar settings = new MenuBar();
MenuItem settingsMenu = settings.addItem("",
null);
settingsMenu.setStyleName("icon-cog");
settingsMenu.addItem("Settings", cmd);
settingsMenu.addItem("Preferences", cmd);
settingsMenu.addSeparator();
settingsMenu.addItem("Change Password", new Command() {
public void menuSelected(MenuItem selectedItem) {
final Window subaccntwin=new Window("Change Account Settings");
subaccntwin.setHeight("330px");
subaccntwin.setWidth("400px");
VerticalLayout myacclayout=new VerticalLayout();
myacclayout.setSpacing(true);
myacclayout.setMargin(true);
Label Changepassword=new Label("<h4><b>Change Password</b></h4>",Label.CONTENT_XHTML);
myacclayout.addComponent(Changepassword);
FormLayout myaccform=new FormLayout();
myaccform.setSpacing(true);
myaccform.setMargin(true);
oldpassword =new TextField("OldPassword");
oldpassword.setImmediate(true);
oldpassword.addValueChangeListener(new ValueChangeListener() {
@Override
public void valueChange(ValueChangeEvent event) {
// TODO Auto-generated method stub
//Notification.show("text entered");
try {
Boolean result=new WTDManagerController().checkPassowrd(VaadinSession.getCurrent().getSession().getAttribute("username").toString(), oldpassword.getValue());
System.out.println("Is entered password is correct??"+result);
if(result==false){
MessageBox.showPlain(Icon.ERROR, "Password", "Please Enter Correct Password", ButtonId.OK);
oldpassword.setValue("");
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
});
Newpassword =new TextField("New Password");
Newpassword.setImmediate(true);
newconfirmpasswrd=new PasswordField("Confirm NewPassword");
newconfirmpasswrd.setImmediate(true);
myaccform.addComponent(oldpassword);
myaccform.addComponent(Newpassword);
myaccform.addComponent(newconfirmpasswrd);
newconfirmpasswrd.addValueChangeListener(new ValueChangeListener() {
@Override
public void valueChange(ValueChangeEvent event) {
// TODO Auto-generated method stub
if(!(Newpassword.getValue().toString().equals(newconfirmpasswrd.getValue().toString()))){
MessageBox.showPlain(Icon.ERROR, "Password", "New password and Confirm password must be same", ButtonId.OK);
Newpassword.setValue("");
newconfirmpasswrd.setValue("");
}
}
});
myacclayout.addComponent(myaccform);
HorizontalLayout btnaccounts=new HorizontalLayout();
btnaccounts.setSpacing(true);
btnaccounts.setMargin(true);
Button okaccbtn=new Button("Save",new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
// TODO Auto-generated method stub
String username=null;
try {
username=VaadinSession.getCurrent().getSession().getAttribute("username").toString();
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
if(oldpassword.getValue()!="" || Newpassword.getValue()!="" || newconfirmpasswrd.getValue()!=""){
Boolean result=new WTDManagerController().updatePassword(oldpassword.getValue(), Newpassword.getValue(),username );
if(result==true){
MessageBox.showPlain(Icon.INFO, "Change Password", "Password Changed Successfully", ButtonId.OK);
subaccntwin.close();
}else{
MessageBox.showPlain(Icon.INFO, "Change Password", "Failed to change password", ButtonId.OK);
}
}else{
MessageBox.showPlain(Icon.INFO, "Change Password", "Please Fill all the fields", ButtonId.OK);
}
//subaccntwin.close();
}
});
btnaccounts.addComponent(okaccbtn);
okaccbtn.setStyleName(Runo.BUTTON_SMALL);
Button closeaccbtn=new Button("Close",new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
// TODO Auto-generated method stub
subaccntwin.close();
}
});
btnaccounts.addComponent(closeaccbtn);
closeaccbtn.setStyleName(Runo.BUTTON_SMALL);
myacclayout.addComponent(btnaccounts);
subaccntwin.setContent(myacclayout);
subaccntwin.center();
UI.getCurrent().addWindow(subaccntwin);
}
});
addComponent(settings);
Button exit = new NativeButton("Exit");
exit.addStyleName("icon-cancel");
exit.setDescription("Sign Out");
addComponent(exit);
exit.addClickListener(new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
// buildLoginView(true);
System.out.println("Logged out");
//getUI().getSession().close();
VaadinSession.getCurrent().getSession().invalidate();
getUI().getPage().setLocation("/WCIS");
buildLoginView(true);
System.out.println("Logged out");
}
});
}
});
}
});
// Content
addComponent(content);
content.setSizeFull();
content.addStyleName("view-content");
setExpandRatio(content, 1);
}
});
menu.removeAllComponents();
nav.navigateTo("/dashboard");
for (final String view : new String[] { "dashboard","EmployeeManager", "WelderMasterList","TimelineActivity","Reports" }) {
Button b = new NativeButton(view.substring(0, 1).toUpperCase()
+ view.substring(1).replace('-', ' '));
b.addStyleName("icon-" + view);
b.addClickListener(new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
clearMenuSelection();
event.getButton().addStyleName("selected");
if (!nav.getState().equals("/" + view))
try
{
nav.navigateTo("/" + view);
}
catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
UI.getCurrent().setComponentError(null);
}
}
});
if (view.equals("WelderMasterList")) {
// Add drop target to reports button
DragAndDropWrapper reports = new DragAndDropWrapper(b);
reports.setDragStartMode(DragStartMode.NONE);
reports.setDropHandler(new DropHandler() {
@Override
public void drop(DragAndDropEvent event) {
clearMenuSelection();
viewNameToMenuButton.get("/WelderMasterList").addStyleName(
"selected");
autoCreateReport = true;
items = event.getTransferable();
nav.navigateTo("/WelderMasterList");
}
@Override
public AcceptCriterion getAcceptCriterion() {
return AcceptItem.ALL;
}
});
menu.addComponent(reports);
menu.addStyleName("no-vertical-drag-hints");
menu.addStyleName("no-horizontal-drag-hints");
} else {
menu.addComponent(b);
}
viewNameToMenuButton.put("/" + view, b);
}
menu.addStyleName("menu");
menu.setHeight("100%");
viewNameToMenuButton.get("/dashboard").setHtmlContentAllowed(true);
String f = Page.getCurrent().getUriFragment();
if (f != null && f.startsWith("!")) {
f = f.substring(1);
}
if (f == null || f.equals("") || f.equals("/")) {
nav.navigateTo("/dashboard");
menu.getComponent(0).addStyleName("selected");
} else {
nav.navigateTo(f);
viewNameToMenuButton.get(f).addStyleName("selected");
}
nav.addViewChangeListener(new ViewChangeListener() {
@Override
public boolean beforeViewChange(ViewChangeEvent event) {
return true;
}
@Override
public void afterViewChange(ViewChangeEvent event) {
View newView = event.getNewView();
}
});
}
catch(Exception e)
{
e.printStackTrace();
UI.getCurrent().setComponentError(null);
}
}
private void mainShopStoreView() {
setImmediate(true);
try
{
nav = new Navigator(this, content);
for (String route : mainshoproutes.keySet()) {
nav.addView(route, mainshoproutes.get(route));
}
removeStyleName("login");
root.removeComponent(loginLayout);
root.addComponent(new HorizontalLayout() {
{
setSizeFull();
addStyleName("main-view");
addComponent(new VerticalLayout() {
// Sidebar
{
addStyleName("sidebar");
setWidth(null);
setHeight("100%");
// Branding element
addComponent(new CssLayout() {
{
addStyleName("branding");
Label logo = new Label(
"<span>MainShopStore</span> Dashboard",
ContentMode.HTML);
logo.setSizeUndefined();
addComponent(logo);
}
});
// Main menu
addComponent(menu);
setExpandRatio(menu, 1);
// User menu
addComponent(new VerticalLayout() {
{
setSizeUndefined();
addStyleName("user");
Image profilePic = new Image(
null,
new ThemeResource("img/profile-pic.png"));
profilePic.setWidth("34px");
addComponent(profilePic);
Label userName=null;
try {
userName = new Label(VaadinSession.getCurrent().getSession().getAttribute("username").toString());
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
userName.setSizeUndefined();
addComponent(userName);
Command cmd = new Command() {
@Override
public void menuSelected(
MenuItem selectedItem) {
Notification
.show("Not implemented in this demo");
}
};
MenuBar settings = new MenuBar();
MenuItem settingsMenu = settings.addItem("",
null);
settingsMenu.setStyleName("icon-cog");
settingsMenu.addItem("Settings", cmd);
settingsMenu.addItem("Preferences", cmd);
settingsMenu.addSeparator();
settingsMenu.addItem("Change Password", new Command() {
public void menuSelected(MenuItem selectedItem) {
final Window subaccntwin=new Window("Change Account Settings");
subaccntwin.setHeight("330px");
subaccntwin.setWidth("400px");
VerticalLayout myacclayout=new VerticalLayout();
myacclayout.setSpacing(true);
myacclayout.setMargin(true);
Label Changepassword=new Label("<h4><b>Change Password</b></h4>",Label.CONTENT_XHTML);
myacclayout.addComponent(Changepassword);
FormLayout myaccform=new FormLayout();
myaccform.setSpacing(true);
myaccform.setMargin(true);
oldpassword =new TextField("OldPassword");
oldpassword.setImmediate(true);
oldpassword.addValueChangeListener(new ValueChangeListener() {
@Override
public void valueChange(ValueChangeEvent event) {
// TODO Auto-generated method stub
//Notification.show("text entered");
try {
Boolean result=new WTDManagerController().checkPassowrd(VaadinSession.getCurrent().getSession().getAttribute("username").toString(), oldpassword.getValue());
System.out.println("Is entered password is correct??"+result);
if(result==false){
MessageBox.showPlain(Icon.ERROR, "Password", "Please Enter Correct Password", ButtonId.OK);
oldpassword.setValue("");
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
});
Newpassword =new TextField("New Password");
Newpassword.setImmediate(true);
newconfirmpasswrd=new PasswordField("Confirm NewPassword");
newconfirmpasswrd.setImmediate(true);
myaccform.addComponent(oldpassword);
myaccform.addComponent(Newpassword);
myaccform.addComponent(newconfirmpasswrd);
newconfirmpasswrd.addValueChangeListener(new ValueChangeListener() {
@Override
public void valueChange(ValueChangeEvent event) {
// TODO Auto-generated method stub
if(!(Newpassword.getValue().toString().equals(newconfirmpasswrd.getValue().toString()))){
MessageBox.showPlain(Icon.ERROR, "Password", "New password and Confirm password must be same", ButtonId.OK);
Newpassword.setValue("");
newconfirmpasswrd.setValue("");
}
}
});
myacclayout.addComponent(myaccform);
HorizontalLayout btnaccounts=new HorizontalLayout();
btnaccounts.setSpacing(true);
btnaccounts.setMargin(true);
Button okaccbtn=new Button("Save",new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
// TODO Auto-generated method stub
String username=null;
try {
username= VaadinSession.getCurrent().getSession().getAttribute("username").toString();
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
if(oldpassword.getValue()!="" || Newpassword.getValue()!="" || newconfirmpasswrd.getValue()!=""){
Boolean result=new WTDManagerController().updatePassword(oldpassword.getValue(), Newpassword.getValue(),username);
if(result==true){
MessageBox.showPlain(Icon.INFO, "Change Password", "Password Changed Successfully", ButtonId.OK);
subaccntwin.close();
}else{
MessageBox.showPlain(Icon.INFO, "Change Password", "Failed to change password", ButtonId.OK);
}
}else{
MessageBox.showPlain(Icon.INFO, "Change Password", "Please Fill all the fields", ButtonId.OK);
}
//subaccntwin.close();
}
});
btnaccounts.addComponent(okaccbtn);
okaccbtn.setStyleName(Runo.BUTTON_SMALL);
Button closeaccbtn=new Button("Close",new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
// TODO Auto-generated method stub
subaccntwin.close();
}
});
btnaccounts.addComponent(closeaccbtn);
closeaccbtn.setStyleName(Runo.BUTTON_SMALL);
myacclayout.addComponent(btnaccounts);
subaccntwin.setContent(myacclayout);
subaccntwin.center();
UI.getCurrent().addWindow(subaccntwin);
}
});
addComponent(settings);
Button exit = new NativeButton("Exit");
exit.addStyleName("icon-cancel");
exit.setDescription("Sign Out");
addComponent(exit);
exit.addClickListener(new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
//buildLoginView(true);
System.out.println("Logged out");
//getUI().getSession().close();
VaadinSession.getCurrent().getSession().invalidate();
getUI().getPage().setLocation("/WCIS");
buildLoginView(true);
System.out.println("Logged out");
}
});
}
});
}
});
// Content
addComponent(content);
content.setSizeFull();
content.addStyleName("view-content");
setExpandRatio(content, 1);
}
});
menu.removeAllComponents();
nav.navigateTo("/dashboard");
for (final String view : new String[] { "dashboard", "AssignedJobs","TimelineActivity","Reports"}) {
Button b = new NativeButton(view.substring(0, 1).toUpperCase()
+ view.substring(1).replace('-', ' '));
b.addStyleName("icon-" + view);
b.addClickListener(new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
clearMenuSelection();
event.getButton().addStyleName("selected");
if (!nav.getState().equals("/" + view))
try
{
nav.navigateTo("/" + view);
}
catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
UI.getCurrent().setComponentError(null);
}
}
});
if (view.equals("AssignedJobs")) {
// Add drop target to reports button
DragAndDropWrapper reports = new DragAndDropWrapper(b);
reports.setDragStartMode(DragStartMode.NONE);
reports.setDropHandler(new DropHandler() {
@Override
public void drop(DragAndDropEvent event) {
clearMenuSelection();
viewNameToMenuButton.get("/AssignedJobs").addStyleName(
"selected");
autoCreateReport = true;
items = event.getTransferable();
nav.navigateTo("/AssignedJobs");
}
@Override
public AcceptCriterion getAcceptCriterion() {
return AcceptItem.ALL;
}
});
menu.addComponent(reports);
menu.addStyleName("no-vertical-drag-hints");
menu.addStyleName("no-horizontal-drag-hints");
} else {
menu.addComponent(b);
}
viewNameToMenuButton.put("/" + view, b);
}
menu.addStyleName("menu");
menu.setHeight("100%");
viewNameToMenuButton.get("/dashboard").setHtmlContentAllowed(true);
String f = Page.getCurrent().getUriFragment();
if (f != null && f.startsWith("!")) {
f = f.substring(1);
}
if (f == null || f.equals("") || f.equals("/")) {
nav.navigateTo("/dashboard");
menu.getComponent(0).addStyleName("selected");
} else {
nav.navigateTo(f);
viewNameToMenuButton.get(f).addStyleName("selected");
}
nav.addViewChangeListener(new ViewChangeListener() {
@Override
public boolean beforeViewChange(ViewChangeEvent event) {
return true;
}
@Override
public void afterViewChange(ViewChangeEvent event) {
View newView = event.getNewView();
}
});
}
catch(Exception e)
{
e.printStackTrace();
UI.getCurrent().setComponentError(null);
}
}
private void AdminView() {
setImmediate(true);
try
{
nav = new Navigator(this, content);
for (String route : adminroutes.keySet()) {
nav.addView(route, adminroutes.get(route));
}
removeStyleName("login");
root.removeComponent(loginLayout);
root.addComponent(new HorizontalLayout() {
{
setSizeFull();
addStyleName("main-view");
addComponent(new VerticalLayout() {
// Sidebar
{
addStyleName("sidebar");
setWidth(null);
setHeight("100%");
// Branding element
addComponent(new CssLayout() {
{
addStyleName("branding");
Label logo = new Label(
"<span>Admin</span> Dashboard",
ContentMode.HTML);
logo.setSizeUndefined();
addComponent(logo);
}
});
// Main menu
addComponent(menu);
setExpandRatio(menu, 1);
// User menu
addComponent(new VerticalLayout() {
{
setSizeUndefined();
addStyleName("user");
Image profilePic = new Image(
null,
new ThemeResource("img/profile-pic.png"));
profilePic.setWidth("34px");
addComponent(profilePic);
Label userName=null;
try {
userName = new Label(VaadinSession.getCurrent().getSession().getAttribute("username").toString());
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
userName.setSizeUndefined();
addComponent(userName);
Command cmd = new Command() {
@Override
public void menuSelected(
MenuItem selectedItem) {
Notification
.show("Not implemented in this demo");
}
};
MenuBar settings = new MenuBar();
MenuItem settingsMenu = settings.addItem("",
null);
settingsMenu.setStyleName("icon-cog");
settingsMenu.addItem("Settings", new Command() {
public void menuSelected(MenuItem selectedItem) {
final Window subwinsettings=new Window("Notification days");
subwinsettings.setHeight("200px");
subwinsettings.setWidth("280px");
VerticalLayout versetings=new VerticalLayout();
versetings.setSpacing(true);
versetings.setMargin(true);
HorizontalLayout horizseting=new HorizontalLayout();
horizseting.setSpacing(true);
horizseting.setMargin(true);
Label setinglabel=new Label("No of days ");
horizseting.addComponent(setinglabel);
final ComboBox comboseting=new ComboBox();
comboseting.addItem("1");
comboseting.addItem("2");
comboseting.addItem("3");
comboseting.addItem("4");
comboseting.addItem("5");
comboseting.addItem("6");
comboseting.addItem("7");
comboseting.addItem("8");
comboseting.addItem("9");
comboseting.addItem("10");
horizseting.addComponent(comboseting);
versetings.addComponent(horizseting);
Button oksetting=new Button("OK",new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
UserCreationController _usercreation=new UserCreationController();
domain.Notification notif=new domain.Notification();
notif.setNumberofdays(Integer.parseInt(comboseting.getValue().toString()));
String days=comboseting.getValue().toString();
_usercreation.edit_Notification(notif,days);
// TODO Auto-generated method stub
subwinsettings.close();
}
});
versetings.addComponent(oksetting);
oksetting.addStyleName(Runo.BUTTON_SMALL);
subwinsettings.setContent(versetings);
subwinsettings.center();
UI.getCurrent().addWindow(subwinsettings);
// MessageBox.showPlain(Icon.WARN, "Report", "Please slect Inputs", ButtonId.OK);
}
});
settingsMenu.setStyleName("icon-cog");
// settingsMenu.addItem("Settings", cmd);
settingsMenu.addItem("Custom Jobnumber", new Command() {
@Override
public void menuSelected(MenuItem selectedItem) {
// TODO Auto-generated method stub
final Window subwinsettings=new Window("Custom Jobnumber");
subwinsettings.setHeight("300px");
subwinsettings.setWidth("380px");
VerticalLayout versetings=new VerticalLayout();
versetings.setSpacing(true);
versetings.setMargin(true);
VerticalLayout horizseting=new VerticalLayout();
horizseting.setSpacing(true);
horizseting.setMargin(true);
Label currentJobnumber=null;
try {
List<String> result=new UserCreationController().getLatestCustomJobnumber();
currentJobnumber=new Label();
currentJobnumber.setCaption("Current Custom Jobnumber: "+result.get(0).toString());
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
Label setinglabel=new Label("Enter Custom Jobnumber(EX:DV-100)");
horizseting.addComponent(currentJobnumber);
horizseting.addComponent(setinglabel);
custom_jobnumber=new TextField();
horizseting.addComponent(custom_jobnumber);
custom_jobnumber.setImmediate(true);
custom_jobnumber.addValueChangeListener(new ValueChangeListener() {
@Override
public void valueChange(ValueChangeEvent event) {
// TODO Auto-generated method stub
}
});
versetings.addComponent(horizseting);
Button oksetting=new Button("OK",new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
if(custom_jobnumber.getValue()!=""){
Boolean result1=new UserCreationController().validateCustomJobnumber(custom_jobnumber.getValue().toString());
if(result1==false){
}else{
MessageBox.showPlain(Icon.WARN, "Custom Jobnumber", "Entered Jobnumber is already used or Invalid", ButtonId.OK);
custom_jobnumber.setValue("");
}
try {
System.out.println(":::::::::::::::::::::::::::::::::::::::::::::"+custom_jobnumber.getValue().toString());
String[] num=custom_jobnumber.getValue().toString().split("-");
//Character.isDigit(num[1]
);
for(int k=0;k<num.length;k++){
System.out.println("tokensss**"+num[k]
);
}
System.out
.println(“&&&&&&&&&&&&&&&”+num[1]
);
Boolean res=false;
try {
Integer.parseInt(num[1]
);
} catch(NumberFormatException e) {
res=true;
}
System.out
.println(“validation response is::::::::”+res);
if(res==true){
MessageBox.showPlain(Icon.WARN, “Custom Jobnumber”, " Invalid Jobnumber Please enter correct format", ButtonId.OK);
custom_jobnumber.setValue(“”);
}else{
Notification.show(“okkkkkkk”);
if(custom_jobnumber.getValue()!=“”){
UserCreationController _usercreation=new UserCreationController();
//domain.CustomJobnumber notif=new domain.CustomJobnumber();
String days=custom_jobnumber.getValue().toString();
String result= _usercreation.setCustomJobnumber(days);
if(result.equals("success")){
MessageBox.showPlain(Icon.INFO, "Custom Jobnumber", "Successfully submited", ButtonId.OK);
}else{
MessageBox.showPlain(Icon.ERROR, "Custom Jobnumber", "Failed to Update custom jobnumber", ButtonId.OK);
}
// TODO Auto-generated method stub
subwinsettings.close();
}else{
MessageBox.showPlain(Icon.WARN, "Custom Jobnumber", "Please enter jobnumber", ButtonId.OK);
}
}
} catch (Exception e) {
// TODO: handle exception
custom_jobnumber.setValue("");
e.printStackTrace();
}
}else{
MessageBox.showPlain(Icon.WARN, "Custom Jobnumber", "Please enter jobnumber", ButtonId.OK);
}
}
});
versetings.addComponent(oksetting);
oksetting.addStyleName(Runo.BUTTON_SMALL);
subwinsettings.setContent(versetings);
subwinsettings.center();
UI.getCurrent().addWindow(subwinsettings);
// MessageBox.showPlain(Icon.WARN, "Report", "Please slect Inputs", ButtonId.OK);
}
});
settingsMenu.addSeparator();
settingsMenu.addItem("Change Password", new Command() {
public void menuSelected(MenuItem selectedItem) {
final Window subaccntwin=new Window("Change Account Settings");
subaccntwin.setHeight("330px");
subaccntwin.setWidth("400px");
VerticalLayout myacclayout=new VerticalLayout();
myacclayout.setSpacing(true);
myacclayout.setMargin(true);
Label Changepassword=new Label("<h4><b>Change Password</b></h4>",Label.CONTENT_XHTML);
myacclayout.addComponent(Changepassword);
FormLayout myaccform=new FormLayout();
myaccform.setSpacing(true);
myaccform.setMargin(true);
oldpassword =new TextField("OldPassword");
oldpassword.setImmediate(true);
oldpassword.addValueChangeListener(new ValueChangeListener() {
@Override
public void valueChange(ValueChangeEvent event) {
// TODO Auto-generated method stub
//Notification.show("text entered");
try {
Boolean result=new WTDManagerController().checkPassowrd(VaadinSession.getCurrent().getSession().getAttribute("username").toString(), oldpassword.getValue());
System.out.println("Is entered password is correct??"+result);
if(result==false){
MessageBox.showPlain(Icon.ERROR, "Password", "Please Enter Correct Password", ButtonId.OK);
oldpassword.setValue("");
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
});
Newpassword =new TextField("New Password");
Newpassword.setImmediate(true);
newconfirmpasswrd=new PasswordField("Confirm NewPassword");
newconfirmpasswrd.setImmediate(true);
myaccform.addComponent(oldpassword);
myaccform.addComponent(Newpassword);
myaccform.addComponent(newconfirmpasswrd);
newconfirmpasswrd.addValueChangeListener(new ValueChangeListener() {
@Override
public void valueChange(ValueChangeEvent event) {
// TODO Auto-generated method stub
if(!(Newpassword.getValue().toString().equals(newconfirmpasswrd.getValue().toString()))){
MessageBox.showPlain(Icon.ERROR, "Password", "New password and Confirm password must be same", ButtonId.OK);
Newpassword.setValue("");
newconfirmpasswrd.setValue("");
}
}
});
myacclayout.addComponent(myaccform);
HorizontalLayout btnaccounts=new HorizontalLayout();
btnaccounts.setSpacing(true);
btnaccounts.setMargin(true);
Button okaccbtn=new Button("Save",new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
// TODO Auto-generated method stub
String username=null;
try {
username=VaadinSession.getCurrent().getSession().getAttribute("username").toString();
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
if(oldpassword.getValue()!="" || Newpassword.getValue()!="" || newconfirmpasswrd.getValue()!=""){
Boolean result=new WTDManagerController().updatePassword(oldpassword.getValue(), Newpassword.getValue(),username );
if(result==true){
MessageBox.showPlain(Icon.INFO, "Change Password", "Password Changed Successfully", ButtonId.OK);
subaccntwin.close();
}else{
MessageBox.showPlain(Icon.INFO, "Change Password", "Failed to change password", ButtonId.OK);
}
}else{
MessageBox.showPlain(Icon.INFO, "Change Password", "Please Fill all the fields", ButtonId.OK);
}
//subaccntwin.close();
}
});
btnaccounts.addComponent(okaccbtn);
okaccbtn.setStyleName(Runo.BUTTON_SMALL);
Button closeaccbtn=new Button("Close",new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
// TODO Auto-generated method stub
subaccntwin.close();
}
});
btnaccounts.addComponent(closeaccbtn);
closeaccbtn.setStyleName(Runo.BUTTON_SMALL);
myacclayout.addComponent(btnaccounts);
subaccntwin.setContent(myacclayout);
subaccntwin.center();
UI.getCurrent().addWindow(subaccntwin);
}
});
addComponent(settings);
Button exit = new NativeButton("Exit");
exit.addStyleName("icon-cancel");
exit.setDescription("Sign Out");
addComponent(exit);
exit.addClickListener(new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
System.out.println("Logged out");
//getUI().getSession().close();
VaadinSession.getCurrent().getSession().invalidate();
getUI().getPage().setLocation("/WCIS");
buildLoginView(true);
System.out.println("Logged out");
}
});
}
});
}
});
// Content
addComponent(content);
content.setSizeFull();
content.addStyleName("view-content");
setExpandRatio(content, 1);
}
});
menu.removeAllComponents();
nav.navigateTo("/dashboard");
for (final String view : new String[] { "dashboard", "MasterCreation","TimelineActivity","Reports","ImportContacts"}) {
Button b = new NativeButton(view.substring(0, 1).toUpperCase()
+ view.substring(1).replace('-', ' '));
b.addStyleName("icon-" + view);
b.addClickListener(new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
clearMenuSelection();
event.getButton().addStyleName("selected");
if (!nav.getState().equals("/" + view))
try
{
nav.navigateTo("/" + view);
}
catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
UI.getCurrent().setComponentError(null);
}
}
});
if (view.equals("UserCreation")) {
// Add drop target to reports button
DragAndDropWrapper reports = new DragAndDropWrapper(b);
reports.setDragStartMode(DragStartMode.NONE);
reports.setDropHandler(new DropHandler() {
@Override
public void drop(DragAndDropEvent event) {
clearMenuSelection();
viewNameToMenuButton.get("/UserCreation").addStyleName(
"selected");
autoCreateReport = true;
items = event.getTransferable();
nav.navigateTo("/UserCreation");
}
@Override
public AcceptCriterion getAcceptCriterion() {
return AcceptItem.ALL;
}
});
menu.addComponent(reports);
menu.addStyleName("no-vertical-drag-hints");
menu.addStyleName("no-horizontal-drag-hints");
} else {
menu.addComponent(b);
}
viewNameToMenuButton.put("/" + view, b);
}
menu.addStyleName("menu");
menu.setHeight("100%");
viewNameToMenuButton.get("/dashboard").setHtmlContentAllowed(true);
String f = Page.getCurrent().getUriFragment();
if (f != null && f.startsWith("!")) {
f = f.substring(1);
}
if (f == null || f.equals("") || f.equals("/")) {
nav.navigateTo("/dashboard");
menu.getComponent(0).addStyleName("selected");
} else {
nav.navigateTo(f);
viewNameToMenuButton.get(f).addStyleName("selected");
}
nav.addViewChangeListener(new ViewChangeListener() {
@Override
public boolean beforeViewChange(ViewChangeEvent event) {
// helpManager.closeAll();
return true;
}
@Override
public void afterViewChange(ViewChangeEvent event) {
View newView = event.getNewView();
}
});
}
catch(Exception e)
{
e.printStackTrace();
UI.getCurrent().setComponentError(null);
}
}
private Transferable items;
private void clearMenuSelection() {
for (Iterator<Component> it = menu.getComponentIterator(); it.hasNext();) {
Component next = it.next();
if (next instanceof NativeButton) {
next.removeStyleName("selected");
} else if (next instanceof DragAndDropWrapper) {
((DragAndDropWrapper) next).iterator().next()
.removeStyleName("selected");
}
}
}
void updateReportsButtonBadge(String badgeCount) {
viewNameToMenuButton.get("/reports").setHtmlContentAllowed(true);
viewNameToMenuButton.get("/reports").setCaption(
"Reports<span class=\"badge\">" + badgeCount + "</span>");
}
void clearDashboardButtonBadge() {
viewNameToMenuButton.get("/dashboard").setCaption("Dashboard");
}
boolean autoCreateReport = false;
Table transactions;
public void openReports(Table t) {
transactions = t;
autoCreateReport = true;
nav.navigateTo("/reports");
clearMenuSelection();
viewNameToMenuButton.get("/reports").addStyleName("selected");
}
}
14161.xml (2.1 KB)