Example usage for com.vaadin.server FontAwesome EDIT

List of usage examples for com.vaadin.server FontAwesome EDIT

Introduction

In this page you can find the example usage for com.vaadin.server FontAwesome EDIT.

Prototype

FontAwesome EDIT

To view the source code for com.vaadin.server FontAwesome EDIT.

Click Source Link

Usage

From source file:com.mycollab.module.user.accountsettings.team.view.UserListViewImpl.java

License:Open Source License

private Component generateMemberBlock(final SimpleUser member) {
    VerticalLayout blockContent = new VerticalLayout();
    blockContent.setWidth("350px");
    blockContent.setStyleName("member-block");
    if (RegisterStatusConstants.NOT_LOG_IN_YET.equals(member.getRegisterstatus())) {
        blockContent.addStyleName("inactive");
    }//  w  ww .  ja  v  a 2s. c  o m
    MHorizontalLayout blockTop = new MHorizontalLayout().withFullWidth();
    Image memberAvatar = UserAvatarControlFactory.createUserAvatarEmbeddedComponent(member.getAvatarid(), 100);
    memberAvatar.addStyleName(UIConstants.CIRCLE_BOX);
    blockTop.addComponent(memberAvatar);

    MVerticalLayout memberInfo = new MVerticalLayout().withMargin(false);

    MHorizontalLayout buttonControls = new MHorizontalLayout();
    buttonControls.setDefaultComponentAlignment(Alignment.TOP_RIGHT);
    buttonControls.setVisible(UserUIContext.canWrite(RolePermissionCollections.ACCOUNT_USER));

    if (RegisterStatusConstants.NOT_LOG_IN_YET.equals(member.getRegisterstatus())) {
        MButton resendBtn = new MButton(UserUIContext.getMessage(UserI18nEnum.ACTION_RESEND_INVITATION),
                clickEvent -> {
                    SendUserInvitationEvent invitationEvent = new SendUserInvitationEvent(member.getUsername(),
                            null, member.getInviteUser(), MyCollabUI.getSubDomain(), MyCollabUI.getAccountId());
                    AsyncEventBus asyncEventBus = AppContextUtil.getSpringBean(AsyncEventBus.class);
                    asyncEventBus.post(invitationEvent);
                    NotificationUtil.showNotification(UserUIContext.getMessage(GenericI18Enum.OPT_SUCCESS),
                            UserUIContext.getMessage(UserI18nEnum.OPT_SEND_INVITATION_SUCCESSFULLY,
                                    member.getDisplayName()));
                }).withStyleName(WebThemes.BUTTON_LINK);
        buttonControls.with(resendBtn);
    }

    MButton editBtn = new MButton("",
            clickEvent -> EventBusFactory.getInstance()
                    .post(new UserEvent.GotoEdit(UserListViewImpl.this, member))).withIcon(FontAwesome.EDIT)
                            .withStyleName(WebThemes.BUTTON_LINK);
    buttonControls.with(editBtn);

    MButton deleteBtn = new MButton("",
            clickEvent -> ConfirmDialogExt.show(UI.getCurrent(),
                    UserUIContext.getMessage(GenericI18Enum.DIALOG_DELETE_TITLE, MyCollabUI.getSiteName()),
                    UserUIContext.getMessage(GenericI18Enum.DIALOG_DELETE_SINGLE_ITEM_MESSAGE),
                    UserUIContext.getMessage(GenericI18Enum.BUTTON_YES),
                    UserUIContext.getMessage(GenericI18Enum.BUTTON_NO), confirmDialog -> {
                        if (confirmDialog.isConfirmed()) {
                            UserService userService = AppContextUtil.getSpringBean(UserService.class);
                            userService.pendingUserAccounts(Collections.singletonList(member.getUsername()),
                                    MyCollabUI.getAccountId());
                            EventBusFactory.getInstance()
                                    .post(new UserEvent.GotoList(UserListViewImpl.this, null));
                        }
                    })).withIcon(FontAwesome.TRASH_O).withStyleName(WebThemes.BUTTON_LINK);
    buttonControls.with(deleteBtn);

    memberInfo.addComponent(buttonControls);
    memberInfo.setComponentAlignment(buttonControls, Alignment.MIDDLE_RIGHT);

    A memberLink = new A(
            AccountLinkGenerator.generatePreviewFullUserLink(MyCollabUI.getSiteUrl(), member.getUsername()))
                    .appendText(member.getDisplayName());
    ELabel memberLinkLbl = ELabel.h3(memberLink.write()).withStyleName(UIConstants.TEXT_ELLIPSIS);
    memberInfo.addComponent(memberLinkLbl);
    memberInfo.addComponent(ELabel.hr());

    if (member.getRoleid() != null) {
        String memberRoleLinkPrefix = String.format("<a href=\"%s\"",
                AccountLinkBuilder.generatePreviewFullRoleLink(member.getRoleid()));
        ELabel memberRole = new ELabel(ContentMode.HTML).withStyleName(UIConstants.TEXT_ELLIPSIS);
        if (Boolean.TRUE.equals(member.getIsAccountOwner())) {
            memberRole.setValue(String.format("%sstyle=\"color: #B00000;\">%s</a>", memberRoleLinkPrefix,
                    UserUIContext.getMessage(RoleI18nEnum.OPT_ACCOUNT_OWNER)));
        } else {
            memberRole.setValue(String.format("%sstyle=\"color:gray;font-size:12px;\">%s</a>",
                    memberRoleLinkPrefix, member.getRoleName()));
        }
        memberInfo.addComponent(memberRole);
    } else if (Boolean.TRUE.equals(member.getIsAccountOwner())) {
        Label memberRole = new Label(String.format("<a style=\"color: #B00000;\">%s</a>",
                UserUIContext.getMessage(RoleI18nEnum.OPT_ACCOUNT_OWNER)), ContentMode.HTML);
        memberInfo.addComponent(memberRole);
    } else {
        Label lbl = new Label();
        lbl.setHeight("10px");
        memberInfo.addComponent(lbl);
    }

    if (Boolean.TRUE.equals(MyCollabUI.showEmailPublicly())) {
        Label memberEmailLabel = ELabel
                .html(String.format("<a href='mailto:%s'>%s</a>", member.getUsername(), member.getUsername()))
                .withStyleName(UIConstants.TEXT_ELLIPSIS, UIConstants.META_INFO).withFullWidth();
        memberInfo.addComponent(memberEmailLabel);
    }

    ELabel memberSinceLabel = ELabel
            .html(UserUIContext.getMessage(UserI18nEnum.OPT_MEMBER_SINCE,
                    UserUIContext.formatPrettyTime(member.getRegisteredtime())))
            .withDescription(UserUIContext.formatDateTime(member.getRegisteredtime())).withFullWidth();
    memberInfo.addComponent(memberSinceLabel);

    ELabel lastAccessTimeLbl = ELabel
            .html(UserUIContext.getMessage(UserI18nEnum.OPT_MEMBER_LOGGED_IN,
                    UserUIContext.formatPrettyTime(member.getLastaccessedtime())))
            .withDescription(UserUIContext.formatDateTime(member.getLastaccessedtime()));
    memberInfo.addComponent(lastAccessTimeLbl);
    blockTop.with(memberInfo).expand(memberInfo);
    blockContent.addComponent(blockTop);
    return blockContent;
}

From source file:com.mycollab.module.user.ui.components.PreviewFormControlsGenerator.java

License:Open Source License

public HorizontalLayout createButtonControls(int buttonEnableFlags, String permissionItem) {
    optionBtn = new PopupButton();
    optionBtn.addStyleName(WebThemes.BUTTON_OPTION);
    optionBtn.setIcon(FontAwesome.ELLIPSIS_H);

    if (permissionItem != null) {
        boolean canWrite = UserUIContext.canWrite(permissionItem);
        boolean canAccess = UserUIContext.canAccess(permissionItem);
        boolean canRead = UserUIContext.canRead(permissionItem);

        if ((buttonEnableFlags & ADD_BTN_PRESENTED) == ADD_BTN_PRESENTED) {
            MButton addBtn = new MButton(UserUIContext.getMessage(GenericI18Enum.BUTTON_ADD), clickEvent -> {
                optionBtn.setPopupVisible(false);
                T item = previewForm.getBean();
                previewForm.fireAddForm(item);
            }).withIcon(FontAwesome.PLUS).withStyleName(WebThemes.BUTTON_ACTION).withVisible(canWrite);
            editButtons.addComponent(addBtn);
        }/*from ww w.java2  s  .c  o m*/

        if ((buttonEnableFlags & EDIT_BTN_PRESENTED) == EDIT_BTN_PRESENTED) {
            MButton editBtn = new MButton(UserUIContext.getMessage(GenericI18Enum.BUTTON_EDIT), clickEvent -> {
                optionBtn.setPopupVisible(false);
                T item = previewForm.getBean();
                previewForm.fireEditForm(item);
            }).withIcon(FontAwesome.EDIT).withStyleName(WebThemes.BUTTON_ACTION).withVisible(canWrite);
            editButtons.addComponent(editBtn);
        }

        if ((buttonEnableFlags & DELETE_BTN_PRESENTED) == DELETE_BTN_PRESENTED) {
            MButton deleteBtn = new MButton(UserUIContext.getMessage(GenericI18Enum.BUTTON_DELETE),
                    clickEvent -> {
                        T item = previewForm.getBean();
                        previewForm.fireDeleteForm(item);
                    }).withIcon(FontAwesome.TRASH_O).withStyleName(WebThemes.BUTTON_DANGER)
                            .withVisible(canAccess);
            editButtons.addComponent(deleteBtn);
        }

        layout.with(editButtons);

        if ((buttonEnableFlags & NAVIGATOR_BTN_PRESENTED) == NAVIGATOR_BTN_PRESENTED) {
            ButtonGroup navigationBtns = new ButtonGroup();
            MButton previousItem = new MButton("", clickEvent -> {
                T item = previewForm.getBean();
                previewForm.fireGotoPrevious(item);
            }).withIcon(FontAwesome.CHEVRON_LEFT).withStyleName(WebThemes.BUTTON_ACTION)
                    .withDescription(UserUIContext.getMessage(GenericI18Enum.TOOLTIP_SHOW_PREVIOUS_ITEM))
                    .withVisible(canRead);
            navigationBtns.addButton(previousItem);

            MButton nextItemBtn = new MButton("", clickEvent -> {
                T item = previewForm.getBean();
                previewForm.fireGotoNextItem(item);
            }).withIcon(FontAwesome.CHEVRON_RIGHT).withStyleName(WebThemes.BUTTON_ACTION)
                    .withDescription(UserUIContext.getMessage(GenericI18Enum.TOOLTIP_SHOW_NEXT_ITEM))
                    .withVisible(canRead);
            navigationBtns.addButton(nextItemBtn);
            layout.with(navigationBtns);
        }

        if ((buttonEnableFlags & CLONE_BTN_PRESENTED) == CLONE_BTN_PRESENTED) {
            MButton cloneBtn = new MButton(UserUIContext.getMessage(GenericI18Enum.BUTTON_CLONE),
                    clickEvent -> {
                        optionBtn.setPopupVisible(false);
                        T item = previewForm.getBean();
                        previewForm.fireCloneForm(item);
                    }).withIcon(FontAwesome.ROAD).withVisible(canWrite);
            popupButtonsControl.addOption(cloneBtn);
        }

        if (popupButtonsControl.getComponentCount() > 0) {
            optionBtn.setContent(popupButtonsControl);
            layout.with(optionBtn);
        }
    }
    return layout;
}

From source file:com.mycollab.vaadin.web.ui.ProjectPreviewFormControlsGenerator.java

License:Open Source License

public HorizontalLayout createButtonControls(int buttonEnableFlags, String permissionItem) {
    optionBtn = new PopupButton();
    optionBtn.addStyleName(WebThemes.BUTTON_OPTION);
    optionBtn.setIcon(FontAwesome.ELLIPSIS_H);

    if (permissionItem != null) {
        boolean canWrite = CurrentProjectVariables.canWrite(permissionItem);
        boolean canAccess = CurrentProjectVariables.canAccess(permissionItem);
        boolean canRead = CurrentProjectVariables.canRead(permissionItem);

        if ((buttonEnableFlags & ASSIGN_BTN_PRESENTED) == ASSIGN_BTN_PRESENTED) {
            MButton assignBtn = new MButton(UserUIContext.getMessage(GenericI18Enum.BUTTON_ASSIGN),
                    clickEvent -> {/* w  w w . j  a  va 2s.  c om*/
                        T item = previewForm.getBean();
                        previewForm.fireAssignForm(item);
                    }).withIcon(FontAwesome.SHARE).withStyleName(WebThemes.BUTTON_ACTION).withVisible(canWrite);
            editButtons.addComponent(assignBtn);
        }

        if ((buttonEnableFlags & ADD_BTN_PRESENTED) == ADD_BTN_PRESENTED) {
            MButton addBtn = new MButton(UserUIContext.getMessage(GenericI18Enum.BUTTON_ADD), clickEvent -> {
                optionBtn.setPopupVisible(false);
                T item = previewForm.getBean();
                previewForm.fireAddForm(item);
            }).withIcon(FontAwesome.PLUS).withStyleName(WebThemes.BUTTON_ACTION).withVisible(canWrite);
            editButtons.addComponent(addBtn);
        }

        if ((buttonEnableFlags & EDIT_BTN_PRESENTED) == EDIT_BTN_PRESENTED) {
            MButton editBtn = new MButton(UserUIContext.getMessage(GenericI18Enum.BUTTON_EDIT), clickEvent -> {
                optionBtn.setPopupVisible(false);
                T item = previewForm.getBean();
                previewForm.fireEditForm(item);
            }).withIcon(FontAwesome.EDIT).withStyleName(WebThemes.BUTTON_ACTION).withVisible(canWrite);
            editButtons.addComponent(editBtn);
        }

        if ((buttonEnableFlags & DELETE_BTN_PRESENTED) == DELETE_BTN_PRESENTED) {
            MButton deleteBtn = new MButton(UserUIContext.getMessage(GenericI18Enum.BUTTON_DELETE),
                    clickEvent -> {
                        T item = previewForm.getBean();
                        previewForm.fireDeleteForm(item);
                    }).withIcon(FontAwesome.TRASH_O).withStyleName(WebThemes.BUTTON_DANGER)
                            .withVisible(canAccess);
            editButtons.addComponent(deleteBtn);
        }

        if ((buttonEnableFlags & PRINT_BTN_PRESENTED) == PRINT_BTN_PRESENTED) {
            final PrintButton printBtn = new PrintButton();
            printBtn.withListener(clickEvent -> {
                T item = previewForm.getBean();
                previewForm.firePrintForm(printBtn, item);
            }).withStyleName(WebThemes.BUTTON_OPTION)
                    .withDescription(UserUIContext.getMessage(GenericI18Enum.ACTION_PRINT))
                    .withVisible(canRead);
            editButtons.addComponent(printBtn);
        }

        if ((buttonEnableFlags & CLONE_BTN_PRESENTED) == CLONE_BTN_PRESENTED) {
            MButton cloneBtn = new MButton(UserUIContext.getMessage(GenericI18Enum.BUTTON_CLONE),
                    clickEvent -> {
                        optionBtn.setPopupVisible(false);
                        T item = previewForm.getBean();
                        previewForm.fireCloneForm(item);
                    }).withIcon(FontAwesome.ROAD).withVisible(canWrite);
            popupButtonsControl.addOption(cloneBtn);
        }

        layout.with(editButtons);

        if ((buttonEnableFlags & NAVIGATOR_BTN_PRESENTED) == NAVIGATOR_BTN_PRESENTED) {
            ButtonGroup navigationBtns = new ButtonGroup();
            MButton previousItem = new MButton("", clickEvent -> {
                T item = previewForm.getBean();
                previewForm.fireGotoPrevious(item);
            }).withIcon(FontAwesome.CHEVRON_LEFT).withStyleName(WebThemes.BUTTON_OPTION)
                    .withDescription(UserUIContext.getMessage(GenericI18Enum.TOOLTIP_SHOW_PREVIOUS_ITEM))
                    .withVisible(canRead);
            navigationBtns.addButton(previousItem);

            MButton nextItemBtn = new MButton("", clickEvent -> {
                T item = previewForm.getBean();
                previewForm.fireGotoNextItem(item);
            }).withIcon(FontAwesome.CHEVRON_RIGHT).withStyleName(WebThemes.BUTTON_OPTION)
                    .withDescription(UserUIContext.getMessage(GenericI18Enum.TOOLTIP_SHOW_NEXT_ITEM))
                    .withVisible(canRead);
            navigationBtns.addButton(nextItemBtn);
            layout.addComponent(navigationBtns);
        }

        if (popupButtonsControl.getComponentCount() > 0) {
            optionBtn.setContent(popupButtonsControl);
            layout.addComponent(optionBtn);
        }
    }

    return layout;
}

From source file:com.naoset.framework.frontend.component.profile.CustomerEditWindowView.java

@Override
protected Component buildContent() {
    addMenuItems(new MenuBar().new MenuItem("", FontAwesome.EDIT, edit()));
    return new Panel();

}

From source file:com.swifta.mats.web.usermanagement.UserDetailsModule.java

private HorizontalLayout setDetailsForm(String strUID, String strAction) {
    cDetailsAndOperations = new HorizontalLayout();
    cDetailsAndOperations.setSizeUndefined();

    cUPersonalDetails = new FormLayout();
    cUPersonalDetails.setMargin(false);/*w  w  w  . ja va  2s  .co m*/
    cUPersonalDetails.setSpacing(false);
    cUPersonalDetails.setStyleName("frm_details_personal_info");
    cUPersonalDetails.setSizeUndefined();
    cDetailsAndOperations.addComponent(cUPersonalDetails);

    arrLAllFormFields = new ArrayList<Object>();

    final String btnEditId = "edit";
    arrLAllEditableFields = new ArrayList<Object>();
    arrLTfEditableVals = new ArrayList<String>();

    final Button btnEdit = new Button();
    btnEdit.setId(btnEditId);
    btnEdit.setIcon(FontAwesome.EDIT);
    btnEdit.setStyleName(ValoTheme.BUTTON_ICON_ONLY);
    btnEdit.setStyleName("btn_link");
    btnEdit.setVisible(false);

    final Button btnCancel = new Button();
    btnCancel.setId(btnEditId);
    btnCancel.setIcon(FontAwesome.UNDO);
    btnCancel.setStyleName(ValoTheme.BUTTON_ICON_ONLY);
    btnCancel.setStyleName("btn_link");
    btnCancel.setVisible(false);

    cBtnEditCancel = new HorizontalLayout();
    cBtnEditCancel.setSizeUndefined();
    cBtnEditCancel.addComponent(btnEdit);

    setData(strUID, strAction);
    return cDetailsAndOperations;
}

From source file:com.swifta.mats.web.usermanagement.UserDetailsModule.java

private VerticalLayout getEUDContainer() {

    if (cBtnEditCancel != null)
        cBtnEditCancel.setVisible(false);

    HashMap<Integer, String> profToID = new HashMap<>();

    profToID.put(1, "MATS_ADMIN_USER_PROFILE");
    profToID.put(3, "MATS_FINANCIAL_CONTROLLER_USER_PROFILE");
    profToID.put(4, "MATS_CUSTOMER_CARE_USER_PROFILE");
    profToID.put(6, "MATS_SUPER_AGENT_USER_PROFILE");
    profToID.put(7, "MATS_SUB_AGENT_USER_PROFILE");
    profToID.put(11, "MATS_DEALER_USER_PROFILE");
    profToID.put(15, "MATS_SERVICE_PROVIDER_USER_PROFILE");

    VerticalLayout cAgentInfo = new VerticalLayout();
    cAgentInfo.setMargin(new MarginInfo(true, false, true, false));
    cAgentInfo.setStyleName("c_details_test");
    cAgentInfo.setSizeUndefined();/*from www .j  a va  2 s  .c  o  m*/
    VerticalLayout cBasic = new VerticalLayout();
    Label lbB = new Label("Basic");
    lbB.setStyleName("lb_frm_add_user");
    cBasic.addComponent(lbB);

    TextField tF = new TextField("First Name");
    tFFN = tF;
    tFFN.setRequired(true);
    tF.setValue("Paul");
    arrLAllFormFields.add(tF);
    arrLAllEditableFields.add(tF);
    arrLTfEditableVals.add(tF.getValue());
    cBasic.addComponent(tF);

    tF = new TextField("Middle Name");
    tF.setValue("Pwndz");
    tFMN = tF;
    tFMN.setRequired(true);
    cBasic.addComponent(tF);

    tF = new TextField("Last Name");
    tF.setValue("Kigozi");
    tFLN = tF;
    tFLN.setRequired(true);
    arrLAllFormFields.add(tF);
    arrLAllEditableFields.add(tF);
    arrLTfEditableVals.add(tF.getValue());
    cBasic.addComponent(tF);

    OptionGroup opt = new OptionGroup("Gender");

    opt.addItem("FEMALE");
    // opt.setItemCaption(1, "Female");

    opt.addItem("MALE");
    // opt.setItemCaption(2, "Male");
    opt.select("MALE");
    optSex = opt;
    optSex.setRequired(true);
    arrLAllFormFields.add(opt);
    arrLAllEditableFields.add(opt);
    arrLTfEditableVals.add(opt.getValue().toString());
    cBasic.addComponent(opt);

    ComboBox combo = new ComboBox("Prefix");
    combo.addItem("Mr. ");
    combo.addItem("Mrs. ");
    combo.addItem("Dr. ");
    combo.addItem("Eng. ");
    combo.addItem("Prof. ");
    comboPref = combo;
    comboPref.select("Eng. ");

    arrLAllFormFields.add(combo);
    arrLAllEditableFields.add(combo);
    arrLTfEditableVals.add((combo.getValue() == null) ? "" : combo.getValue().toString());
    cBasic.addComponent(combo);

    combo = new ComboBox("Suffix");
    combo.addItem("Ph.D");
    combo.addItem("M.B.A");
    combo.addItem("RA");
    combo.addItem("CISA ");
    combo.select("Ph.D");
    comboSuff = combo;
    arrLAllFormFields.add(combo);
    arrLAllEditableFields.add(combo);
    arrLTfEditableVals.add((combo.getValue() == null) ? "" : combo.getValue().toString());
    cBasic.addComponent(combo);

    combo = new ComboBox("Language");
    combo.addItem(1);
    combo.select(1);
    combo.setItemCaption(1, "en-US");
    combo.addItem(2);
    combo.setItemCaption(2, "en-UK");
    combo.addItem(3);
    combo.setItemCaption(3, "fr");
    comboLang = combo;
    comboLang.setRequired(true);
    arrLAllFormFields.add(combo);
    arrLAllEditableFields.add(combo);
    arrLTfEditableVals.add((combo.getValue() == null) ? "" : combo.getValue().toString());
    cBasic.addComponent(combo);

    tF = new TextField("Occupation");
    tF.setValue("Software Engineer");
    tFOcc = tF;
    tFOcc.setRequired(true);
    arrLAllFormFields.add(tF);
    arrLAllEditableFields.add(tF);
    arrLTfEditableVals.add(tF.getValue());
    cBasic.addComponent(tF);

    tF = new TextField("Employer");
    tF.setValue("Swifta");
    tFEmp = tF;
    arrLAllFormFields.add(tF);
    arrLAllEditableFields.add(tF);
    arrLTfEditableVals.add(tF.getValue());
    cBasic.addComponent(tF);

    PopupDateField dF = new PopupDateField("DoB");
    cal = Calendar.getInstance();
    cal.set(1988, 11, 12);
    dF.setValue(cal.getTime());
    dFDoB = dF;
    arrLAllFormFields.add(dF);
    arrLAllEditableFields.add(dF);
    arrLTfEditableVals.add(dF.getValue().toString());
    cBasic.addComponent(dF);

    combo = new ComboBox("Country");

    comboCountry = combo;
    comboCountry.setRequired(true);
    cBasic.addComponent(combo);

    combo = new ComboBox("State");
    comboState = combo;
    comboState.setRequired(true);
    comboState.setNullSelectionAllowed(false);
    arrLAllFormFields.add(combo);
    arrLAllEditableFields.add(combo);
    arrLTfEditableVals.add((combo.getValue() == null) ? "" : combo.getValue().toString());
    cBasic.addComponent(combo);

    combo = new ComboBox("Local Government");
    // combo.addItem(1);
    // combo.setItemCaption(1, "Ca. LG");
    // combo.select(1);
    comboLG = combo;
    comboLG.setRequired(true);
    arrLAllFormFields.add(combo);
    arrLAllEditableFields.add(combo);
    arrLTfEditableVals.add((combo.getValue() == null) ? "" : combo.getValue().toString());
    cBasic.addComponent(combo);

    /*
     * if (!(strUserType.equals("CCO") || strUserType.equals("BA"))) {
     * 
     * cBasic.addComponent(dF);
     * 
     * combo.addItem("Passport"); combo.addItem("Voter's Card");
     * combo.addItem("Driving License"); combo.addItem("National ID");
     * combo.addItem("Residential ID"); cBasic.addComponent(combo);
     * 
     * tF = new TextField("ID No."); cBasic.addComponent(tF);
     * 
     * combo = new ComboBox("State"); cBasic.addComponent(combo);
     * 
     * combo = new ComboBox("Country"); cBasic.addComponent(combo); }
     */

    VerticalLayout cC = new VerticalLayout();

    HorizontalLayout cBAndCAndAcc = new HorizontalLayout();
    cBAndCAndAcc.addComponent(cBasic);
    cBAndCAndAcc.addComponent(cC);

    VerticalLayout cCompany = new VerticalLayout();
    // Label lbC = new Label("Company");
    Label lbC = new Label("Identification");
    lbC.setStyleName("lb_frm_add_user");

    combo = new ComboBox("ID Type");

    combo.addItem("Passport Number");
    combo.addItem("National Registration Identification Number");
    combo.addItem("Drivers License Number");
    combo.addItem("Identification Card");
    combo.addItem("Employer Identification Number");
    combo.select("Passport Number");
    comboIDType = combo;
    comboIDType.setRequired(true);

    arrLAllFormFields.add(combo);
    arrLAllEditableFields.add(combo);
    arrLTfEditableVals.add((combo.getValue() == null) ? "" : combo.getValue().toString());
    cCompany.addComponent(combo);

    tF = new TextField("ID No.");
    tF.setValue("001");
    tFIDNo = tF;
    tFIDNo.setRequired(true);
    arrLAllFormFields.add(tF);
    arrLAllEditableFields.add(tF);
    arrLTfEditableVals.add(tF.getValue());
    cCompany.addComponent(tF);

    tF = new TextField("Issuer");
    tFIssuer = tF;
    tFIssuer.setValue("Republic of Uganda");
    arrLAllFormFields.add(tF);
    arrLAllEditableFields.add(tF);
    arrLTfEditableVals.add(tF.getValue());
    cCompany.addComponent(tF);

    dF = new PopupDateField("Issue Date");
    // cal = Calendar.getInstance();
    cal.set(12, 12, 12);
    dF.setValue(cal.getTime());
    dFDoI = dF;
    arrLAllFormFields.add(dF);
    arrLAllEditableFields.add(dF);
    arrLTfEditableVals.add(dF.getValue().toString());
    cCompany.addComponent(dF);

    dF = new PopupDateField("Expiry Date");
    // cal = Calendar.getInstance();
    cal.set(14, 12, 12);
    dF.setValue(cal.getTime());
    dF.setValue(cal.getTime());
    dFDoE = dF;
    dFDoE.setRequired(true);
    dFDoE.setImmediate(true);
    arrLAllFormFields.add(dF);
    arrLAllEditableFields.add(dF);
    arrLTfEditableVals.add(dF.getValue().toString());
    cCompany.addComponent(dF);

    cC.addComponent(cCompany);

    VerticalLayout pC = new VerticalLayout();
    lbC = new Label("Primary Contacts");
    HorizontalLayout cLbc = new HorizontalLayout();
    cLbc.setSizeUndefined();
    cLbc.setMargin(new MarginInfo(true, false, false, false));
    cLbc.addComponent(lbC);
    pC.addComponent(cLbc);

    tF = new TextField("Mobile Phone No.");
    tF.setValue("+256704191152");
    arrLAllFormFields.add(tF);
    arrLAllEditableFields.add(tF);
    arrLTfEditableVals.add(tF.getValue());
    tFPMNo = tF;

    pC.addComponent(tF);

    tF = new TextField("Alt. Phone No.");
    tF.setValue("+1704191152");
    tFPANo = tF;
    arrLAllFormFields.add(tF);
    arrLAllEditableFields.add(tF);
    arrLTfEditableVals.add(tF.getValue());
    pC.addComponent(tF);

    tF = new TextField("Email Address");
    tF.setValue("pwndz172@gmail.com");
    tFPEmail = tF;
    arrLAllFormFields.add(tF);
    arrLAllEditableFields.add(tF);
    arrLTfEditableVals.add(tF.getValue());
    pC.addComponent(tF);
    cC.addComponent(pC);

    VerticalLayout sC = new VerticalLayout();
    lbC = new Label("Secondary Contacts");
    cLbc = new HorizontalLayout();
    cLbc.setSizeUndefined();
    cLbc.setMargin(new MarginInfo(true, false, false, false));
    cLbc.addComponent(lbC);
    sC.addComponent(cLbc);

    tF = new TextField("Mobile Phone No.");
    tF.setValue("+256804191152");
    tFSMNo = tF;
    arrLAllFormFields.add(tF);
    arrLAllEditableFields.add(tF);
    arrLTfEditableVals.add(tF.getValue());
    sC.addComponent(tF);

    tF = new TextField("Alt. Phone No.");
    tF.setValue("+1804191152");
    tFSANo = tF;
    arrLAllFormFields.add(tF);
    arrLAllEditableFields.add(tF);
    arrLTfEditableVals.add(tF.getValue());
    sC.addComponent(tF);

    tF = new TextField("E-mail Address");
    tF.setValue("pkigozi@swifta.com");
    tFSEmail = tF;
    arrLAllFormFields.add(tF);
    arrLAllEditableFields.add(tF);
    arrLTfEditableVals.add(tF.getValue());
    sC.addComponent(tF);

    cC.addComponent(sC);

    VerticalLayout physicalC = new VerticalLayout();
    lbC = new Label("Physical Address");
    cLbc = new HorizontalLayout();
    cLbc.setSizeUndefined();
    cLbc.setMargin(new MarginInfo(true, false, false, false));
    cLbc.addComponent(lbC);
    physicalC.addComponent(cLbc);

    tF = new TextField("Street");
    tF.setValue("Yusuf Lule Rd.");
    tFStreet = tF;
    tFStreet.setRequired(true);
    physicalC.addComponent(tF);

    tF = new TextField("Postal Code");
    tF.setValue("23");
    tFPostalCode = tF;
    physicalC.addComponent(tF);

    tF = new TextField("City");
    tF.setValue("Kampala");
    tFCity = tF;
    arrLAllFormFields.add(tF);
    arrLAllEditableFields.add(tF);
    arrLTfEditableVals.add(tF.getValue());
    tFCity.setRequired(true);
    physicalC.addComponent(tF);

    tF = new TextField("Province");
    tF.setValue("Central");
    tFProv = tF;
    arrLAllFormFields.add(tF);
    arrLAllEditableFields.add(tF);
    arrLTfEditableVals.add(tF.getValue());
    physicalC.addComponent(tF);

    cC.addComponent(physicalC);

    /*
     * || strUserType.equals("BA"))) { tF = new TextField("Fax");
     * cC.addComponent(tF); // strAccTypeCaption = Hierarch }
     */

    /*
     * tF = new TextField("E-mail Address"); cC.addComponent(tF);
     * 
     * tF = new TextField("Physical Address"); cC.addComponent(tF);
     */

    VerticalLayout cAcc = new VerticalLayout();
    Label lbAcc = new Label("Account");
    lbAcc.setStyleName("lb_frm_add_user");
    cAcc.addComponent(lbAcc);
    ComboBox comboHierarchy = null;

    comboHierarchy = new ComboBox("Profile");

    Set<Entry<Integer, String>> set = profToID.entrySet();
    for (Entry<Integer, String> e : set) {
        comboHierarchy.addItem(e.getKey());
        comboHierarchy.setItemCaption(e.getKey(), e.getValue());
    }

    comboHierarchy.select(1);
    comboProfile = comboHierarchy;
    comboProfile.setRequired(true);
    arrLAllFormFields.add(comboProfile);
    arrLAllEditableFields.add(comboProfile);
    arrLTfEditableVals.add((comboProfile.getValue() == null) ? "" : comboProfile.getValue().toString());
    cAcc.addComponent(comboHierarchy);

    final VerticalLayout cLBody = new VerticalLayout();

    tF = new TextField("Username");
    tF.setValue("Livepwndz");
    tFUN = tF;
    tFUN.setRequired(true);
    arrLAllFormFields.add(tF);
    arrLAllEditableFields.add(tF);
    arrLTfEditableVals.add(tF.getValue());
    cLBody.addComponent(tF);

    tF = new TextField("MSISDN");
    tF.setValue("+256774191152");
    tFMSISDN = tF;
    tFMSISDN.setRequired(true);
    arrLAllFormFields.add(tF);
    arrLAllEditableFields.add(tF);
    arrLTfEditableVals.add(tF.getValue());
    cLBody.addComponent(tF);

    // / tF = new TextField("PIN");
    // / cLBody.addComponent(tF);

    tF = new TextField("Email");
    tFAccEmail = tF;
    tFAccEmail.setRequired(true);
    tFAccEmail.setValue("ppounds1@gmail.com");
    arrLAllFormFields.add(tF);
    arrLAllEditableFields.add(tF);
    arrLTfEditableVals.add(tF.getValue());
    cLBody.addComponent(tF);

    combo = new ComboBox("Bank Domain");
    combo.addItem("Stanbic Bank");
    combo.select("Stanbic Bank");
    comboBDomain = combo;
    arrLAllFormFields.add(combo);
    arrLAllEditableFields.add(combo);
    arrLTfEditableVals.add((combo.getValue() == null) ? "" : combo.getValue().toString());
    cLBody.addComponent(combo);

    combo = new ComboBox("Bank Code ID");
    combo.addItem("001");
    combo.select("001");
    comboBID = combo;
    arrLAllFormFields.add(combo);
    arrLAllEditableFields.add(combo);
    arrLTfEditableVals.add((combo.getValue() == null) ? "" : combo.getValue().toString());
    cLBody.addComponent(combo);

    tF = new TextField("Bank Account");
    tF.setValue("00232333452315");
    tFBAcc = tF;

    arrLAllFormFields.add(tF);
    arrLAllEditableFields.add(tF);
    arrLTfEditableVals.add(tF.getValue());
    // tFBAcc.setValidationVisible(true);
    // tFBAcc.addValidator(new NoNull());
    cLBody.addComponent(tF);

    combo.addItem(1);
    combo.setItemCaption(1, "US Dollars");
    combo.select(1);
    comboCur = combo;
    arrLAllFormFields.add(combo);
    arrLAllEditableFields.add(combo);
    arrLTfEditableVals.add((combo.getValue() == null) ? "" : combo.getValue().toString());
    cLBody.addComponent(combo);

    tF = new TextField("Clearing Number");
    tF.setValue("00212");
    tFClrNo = tF;
    arrLAllFormFields.add(tF);
    arrLAllEditableFields.add(tF);
    arrLTfEditableVals.add(tF.getValue());
    cLBody.addComponent(tF);

    Label lbAccRec = new Label("Account Recovery");

    HorizontalLayout cLbAccRec = new HorizontalLayout();
    cLbAccRec.setSizeUndefined();
    cLbAccRec.setMargin(new MarginInfo(true, false, false, false));
    cLbAccRec.addComponent(lbAccRec);
    // cLBody.addComponent(cLbAccRec);

    combo = new ComboBox("Security Question");
    combo.addItem(1);
    combo.addItem(2);
    combo.addItem(3);
    combo.setItemCaption(1, "What is your grandfather's last name?");
    combo.setItemCaption(2, "What was your favorite junior school teacher's name?");
    combo.setItemCaption(3, "What was one of your nicknames in school?");
    combo.select(2);
    comboSecQn = combo;
    arrLAllFormFields.add(combo);
    arrLAllEditableFields.add(combo);
    arrLTfEditableVals.add((combo.getValue() == null) ? "" : combo.getValue().toString());
    // cLBody.addComponent(combo);

    tF = new TextField("Answer");
    tF.setValue("Mrs. X");
    tFSecAns = tF;
    arrLAllFormFields.add(tF);
    arrLAllEditableFields.add(tF);
    arrLTfEditableVals.add(tF.getValue());
    // cLBody.addComponent(tF);

    CheckBox chk = new CheckBox("I accept the terms" + " and conditons.");
    chcTAndC = chk;
    chk.setStyleName("check_t_and_c");
    chk.addValueChangeListener(new ValueChangeListener() {

        /**
         * 
         */
        private static final long serialVersionUID = 1L;

        @Override
        public void valueChange(ValueChangeEvent event) {
            // Notification.show(event.getProperty().getValue().toString());

        }

    });

    comboCountry.addFocusListener(new FocusListener() {

        private static final long serialVersionUID = -5162384967736354225L;

        @Override
        public void focus(FocusEvent event) {
            if (isCSelected)
                return;
            Set<Entry<Integer, String>> es = (Set<Entry<Integer, String>>) getCountries().entrySet();
            if (es.size() == 0)
                return;
            Iterator<Entry<Integer, String>> itr = es.iterator();
            comboCountry.setNullSelectionAllowed(false);
            while (itr.hasNext()) {
                Entry<Integer, String> e = (Entry<Integer, String>) itr.next();
                comboCountry.addItem(e.getKey());
                comboCountry.setItemCaption(e.getKey(), e.getValue());
            }

            comboCountry.select(null);

            isCSelected = true;

        }

    });

    comboCountry.addValueChangeListener(new ValueChangeListener() {
        private static final long serialVersionUID = -404551290095133508L;

        @Override
        public void valueChange(ValueChangeEvent event) {

            comboState.removeAllItems();
            comboLG.removeAllItems();

            if (comboCountry.getValue() == null)
                return;

            Set<Entry<Integer, String>> es = (Set<Entry<Integer, String>>) getStates(
                    Integer.valueOf(comboCountry.getValue().toString())).entrySet();

            if (es.isEmpty()) {
                return;
            }

            Iterator<Entry<Integer, String>> itr = es.iterator();
            while (itr.hasNext()) {
                Entry<Integer, String> e = itr.next();
                comboState.addItem(e.getKey());
                comboState.setItemCaption(e.getKey(), e.getValue());
            }

            comboState.select(null);

        }

    });

    comboState.addFocusListener(new FocusListener() {

        private static final long serialVersionUID = 892516817835461278L;

        @Override
        public void focus(FocusEvent event) {
            Object c = comboCountry.getValue();

            if (c == null) {
                Notification.show("Please select country first", Notification.Type.WARNING_MESSAGE);
                comboCountry.focus();
                return;

            }

        }

    });

    comboState.addValueChangeListener(new ValueChangeListener() {

        private static final long serialVersionUID = 8849241310354979908L;

        @Override
        public void valueChange(ValueChangeEvent event) {

            comboLG.removeAllItems();
            if (comboState.getValue() == null)
                return;
            Set<Entry<Integer, String>> esl = (Set<Entry<Integer, String>>) getLGs(
                    Integer.valueOf(comboState.getValue().toString())).entrySet();
            if (esl.isEmpty()) {
                return;
            }

            Iterator<Entry<Integer, String>> itrl = esl.iterator();
            while (itrl.hasNext()) {
                Entry<Integer, String> e = itrl.next();
                comboLG.addItem(e.getKey());
                comboLG.setItemCaption(e.getKey(), e.getValue());
            }

        }

    });

    comboLG.addFocusListener(new FocusListener() {

        private static final long serialVersionUID = 8925916817835461278L;

        @Override
        public void focus(FocusEvent event) {

            Object s = comboState.getValue();
            if (comboCountry.getValue() == null) {
                Notification.show("Please select country first", Notification.Type.WARNING_MESSAGE);
                comboCountry.focus();
                return;

            }

            if (s == null) {
                Notification.show("Please select state first", Notification.Type.WARNING_MESSAGE);
                comboState.focus();
                return;

            }

        }

    });

    HorizontalLayout cChk = new HorizontalLayout();
    cChk.setSizeUndefined();
    cChk.setMargin(new MarginInfo(true, false, true, false));
    cChk.addComponent(chk);
    // cLBody.addComponent(cChk);

    final VerticalLayout cRBody = new VerticalLayout();
    String strNameCap = "Username";

    tF = new TextField(strNameCap);
    arrLAllFormFields.add(tF);
    arrLAllEditableFields.add(tF);
    arrLTfEditableVals.add(tF.getValue());
    cRBody.addComponent(tF);

    HorizontalLayout cAccBody = new HorizontalLayout();
    cAccBody.addComponent(cLBody);
    cAccBody.addComponent(cRBody);
    cLBody.setStyleName("c_body_visible");
    cRBody.setStyleName("c_body_invisible");
    cAcc.addComponent(cAccBody);

    cBAndCAndAcc.addComponent(cAcc);

    cC.setMargin(new MarginInfo(false, true, false, true));
    cAgentInfo.addComponent(cBAndCAndAcc);

    final String btnSaveId = "save";
    final String btnEditId = "edit";

    final Button btnEdit = new Button();
    btnEdit.setIcon(FontAwesome.SAVE);
    btnEdit.setId(btnSaveId);
    btnEdit.setStyleName("btn_link");

    final Button btnCancel = new Button();
    btnCancel.setVisible(true);
    btnCancel.setIcon(FontAwesome.UNDO);
    btnCancel.setStyleName("btn_link");

    final HorizontalLayout cBtnSR = new HorizontalLayout();
    cBtnSR.addComponent(btnEdit);
    cBtnSR.addComponent(btnCancel);

    // cBtnEditCancel

    cAcc.addComponent(cBtnSR);

    btnEdit.addClickListener(new Button.ClickListener() {

        private static final long serialVersionUID = -935880570210949227L;

        @Override
        public void buttonClick(ClickEvent event) {

            /*
             * Prepare all Editable fields (Entire form) for editing.
             */
            if (event.getButton().getId().equals(btnEditId)) {

                /*
                 * By Default, btnCancel is not visible, until btnEdit is
                 * clicked. Only until then is it added and visible.
                 */

                if (!btnCancel.isVisible()) {
                    event.getButton().setId(btnSaveId);
                    event.getButton().setIcon(FontAwesome.SAVE);
                    btnCancel.setVisible(true);
                    cBtnSR.addComponent(btnCancel);
                }

                enableEditableFormFields(arrLAllEditableFields);

            } else {
                if (event.getButton().getId().equals(btnSaveId)) {
                    /*
                     * 
                     * 
                     * 
                     * 
                     * commit (save) changes i.e, send changes back to the
                     * server.
                     */

                    try {

                        validateAndSave();
                        // cUPersonalDetails.removeAllComponents();
                        // cUPersonalDetails.addComponent(getUDContainer());
                        // Notification.show("Details successfully saved.",
                        // Notification.Type.WARNING_MESSAGE);

                    } catch (Exception e) {
                        // Notification.show("Hello");
                        return;
                    }

                    // Remove undo button (btnCancel)
                    btnCancel.setVisible(false);

                    // Reset all Editable fields to readOnly after saving to
                    // the server
                    // disableEditableFields(arrLAllEditableFields);

                    // Reset btnEdit id to btnIdEdit and caption(icon) to
                    // FontAwesome.EDIT
                    btnEdit.setId(btnEditId);
                    btnEdit.setIcon(FontAwesome.EDIT);
                    btnEdit.setVisible(false);

                    // Reset Edit status to false
                    uDetailsEditStatus = false;

                }
            }

        }
    });

    btnCancel.addClickListener(new Button.ClickListener() {

        private static final long serialVersionUID = -8179030387969880920L;

        @Override
        public void buttonClick(ClickEvent event) {
            resetForm(arrLAllEditableFields, arrLTfEditableVals);
            btnEdit.setId(btnEditId);
            btnEdit.setIcon(FontAwesome.EDIT);
            btnEdit.setVisible(false);
            btnCancel.setVisible(false);

        }
    });

    return cAgentInfo;
}

From source file:com.swifta.mats.web.usermanagement.UserDetailsModule.java

private HorizontalLayout getPC() {

    VerticalLayout cAgentInfo = new VerticalLayout();
    final HorizontalLayout cPlaceholder = new HorizontalLayout();
    cAgentInfo.setMargin(new MarginInfo(true, true, true, true));
    cAgentInfo.setStyleName("c_details_test");

    final VerticalLayout cLBody = new VerticalLayout();

    cLBody.setStyleName("c_body_visible");
    tb = new Table("Linked child accounts");
    // addLinksTable();

    final VerticalLayout cAllProf = new VerticalLayout();

    HorizontalLayout cProfActions = new HorizontalLayout();
    final FormLayout cProfName = new FormLayout();

    cProfName.setStyleName("frm_profile_name");
    cProfName.setSizeUndefined();//from w  w w  .j  a  v  a  2s.c o  m

    final Label lbProf = new Label();
    final TextField tFProf = new TextField();

    lbProf.setCaption("Profile Name: ");
    lbProf.setValue("Certified Authorized User.");

    tFProf.setCaption(lbProf.getCaption());
    cProfName.addComponent(lbProf);

    final Button btnEdit = new Button();
    btnEdit.setIcon(FontAwesome.EDIT);
    btnEdit.setStyleName("btn_link");
    btnEdit.setDescription("Edit profile name");

    final Button btnCancel = new Button();
    btnCancel.setIcon(FontAwesome.UNDO);
    btnCancel.setStyleName("btn_link");
    btnCancel.setDescription("Cancel Profile name editting.");

    Button btnAdd = new Button("+");
    // btnAdd.setIcon(FontAwesome.EDIT);
    btnAdd.setStyleName("btn_link");
    btnAdd.setDescription("Set new profile");

    Button btnRemove = new Button("-");
    // btnRemove.setIcon(FontAwesome.EDIT);
    btnRemove.setStyleName("btn_link");
    btnRemove.setDescription("Remove current profile");

    // cProf.addComponent(cProfName);
    cProfActions.addComponent(btnEdit);
    cProfActions.addComponent(btnCancel);
    cProfActions.addComponent(btnAdd);
    cProfActions.addComponent(btnRemove);

    btnCancel.setVisible(false);

    cAllProf.addComponent(cProfName);
    cAllProf.addComponent(cProfActions);
    cAllProf.setComponentAlignment(cProfActions, Alignment.TOP_CENTER);

    cLBody.addComponent(cAllProf);

    // cLBody.addComponent(tb);

    tb.setSelectable(true);

    cAgentInfo.addComponent(cLBody);

    btnLink = new Button("Add New Link");
    btnLink.setIcon(FontAwesome.LINK);
    btnLink.setDescription("Link new account.");

    // cLBody.addComponent(btnLink);
    // cLBody.setComponentAlignment(btnLink, Alignment.TOP_LEFT);
    btnLink.addClickListener(new LinkClickHandler());

    cPlaceholder.setVisible(false);
    addLinkUserContainer();
    cPlaceholder.setWidth("100%");

    cLBody.addComponent(cPlaceholder);
    cLBody.setComponentAlignment(cPlaceholder, Alignment.TOP_CENTER);
    HorizontalLayout c = new HorizontalLayout();
    c.addComponent(cAgentInfo);

    btnEdit.addClickListener(new Button.ClickListener() {

        private static final long serialVersionUID = -8427226211153164650L;

        @Override
        public void buttonClick(ClickEvent event) {

            if (btnEdit.getIcon().equals(FontAwesome.EDIT)) {

                tFProf.setValue(lbProf.getValue());
                tFProf.selectAll();
                cProfName.replaceComponent(lbProf, tFProf);
                btnEdit.setIcon(FontAwesome.SAVE);
                btnCancel.setVisible(true);
                return;

            } else if (btnEdit.getIcon().equals(FontAwesome.SAVE)) {

                lbProf.setValue(tFProf.getValue());
                cProfName.replaceComponent(tFProf, lbProf);
                btnEdit.setIcon(FontAwesome.EDIT);
                btnCancel.setVisible(false);

                return;
            }
            lbProf.setValue(tFProf.getValue());
            cProfName.replaceComponent(tFProf, lbProf);
            btnEdit.setIcon(FontAwesome.EDIT);
            btnCancel.setVisible(false);

        }
    });

    btnCancel.addClickListener(new Button.ClickListener() {
        private static final long serialVersionUID = -2870045546205986347L;

        @Override
        public void buttonClick(ClickEvent event) {
            cProfName.replaceComponent(tFProf, lbProf);
            btnEdit.setIcon(FontAwesome.EDIT);
            btnCancel.setVisible(false);

        }
    });

    btnAdd.addClickListener(new AddProfileHandler(cAllProf, cPlaceholder));

    btnRemove.addClickListener(new RemoveProfileHandler(pop));

    return c;

}

From source file:com.terralcode.frontend.vista.widgets.alumno.AlumnoVista.java

public AlumnoVista() {
    super();//w  w  w  .  j a va  2s .  c o m
    saveOperation = menubar.addItem("", FontAwesome.SAVE, save());
    trashOperation = menubar.addItem("", FontAwesome.TRASH_O, delete());
    editOperation = menubar.addItem("", FontAwesome.EDIT, editar());
}

From source file:com.terralcode.gestion.frontend.view.widgets.example.crudtestform.CrudExampleForm.java

protected Component buildContent() {
    initTable();/*from w w  w  .  j  a va2 s  . co m*/
    table.setPageLength(table.size());
    addMenuItems(new MenuBar().new MenuItem("", FontAwesome.PLUS, add()),
            new MenuBar().new MenuItem("", FontAwesome.EDIT, edit()),
            new MenuBar().new MenuItem("", FontAwesome.SAVE, save()),
            new MenuBar().new MenuItem("", FontAwesome.TRASH_O, delete()));
    return table;
}

From source file:facs.components.UserAdmin.java

License:Open Source License

public UserAdmin(User user) {

    Date dNow = new Date();
    SimpleDateFormat ft = new SimpleDateFormat("dd.MM.yyyy hh:mm:ss");
    System.out.println(ft.format(dNow) + "  INFO  Calendar User Manager accessed! - User: "
            + LiferayAndVaadinUtils.getUser().getScreenName());

    Label infoLabel = new Label(
            DBManager.getDatabaseInstance().getUserNameByUserID(LiferayAndVaadinUtils.getUser().getScreenName())
                    + "  " + LiferayAndVaadinUtils.getUser().getScreenName());
    infoLabel.addStyleName("h4");

    CheckBox isAdmin = new CheckBox("user has admin panel access");
    isAdmin.setEnabled(false);//from   ww  w  .ja v  a2 s . c  om

    String buttonGroupUpdateTitle = "Edit Group";
    Button updateUserGroup = new Button(buttonGroupUpdateTitle);
    updateUserGroup.setIcon(FontAwesome.EDIT);
    updateUserGroup.setSizeFull();
    updateUserGroup.setDescription("Click here to update the group of the user!");

    String buttonWorkgroupUpdateTitle = "Edit Workgroup";
    Button updateUserWorkgroup = new Button(buttonWorkgroupUpdateTitle);
    updateUserWorkgroup.setIcon(FontAwesome.EDIT);
    updateUserWorkgroup.setSizeFull();
    updateUserWorkgroup.setDescription("Click here to update the workgroup of the user!");

    String buttonUpdateTitle = "Update (user role & group for device)";
    Button updateUserRightsAndRoles = new Button(buttonUpdateTitle);
    updateUserRightsAndRoles.setIcon(FontAwesome.WRENCH);
    updateUserRightsAndRoles.setSizeFull();
    updateUserRightsAndRoles.setDescription("Click here to update the user's role and group for a device!");

    String buttonTitle = "Refresh";
    Button refresh = new Button(buttonTitle);
    refresh.setIcon(FontAwesome.REFRESH);
    refresh.setSizeFull();
    refresh.setDescription("Click here to reload the data from the database!");
    refresh.addStyleName(ValoTheme.BUTTON_FRIENDLY);

    // String buttonTitleSave = "Save";
    // Button save = new Button(buttonTitleSave);
    // save.setIcon(FontAwesome.SAVE);
    // save.setSizeFull();
    // save.setDescription("Click here to save all changes!");
    // save.addStyleName(ValoTheme.BUTTON_BORDERLESS);

    userDevice = new ListSelect("Devices");
    userDevice.addItems(DBManager.getDatabaseInstance().getDeviceNames());
    userDevice.setRows(6);
    userDevice.setNullSelectionAllowed(false);
    userDevice.setSizeFull();
    userDevice.setImmediate(true);
    /*
     * userDevice.addValueChangeListener(e -> Notification.show("Device:",
     * String.valueOf(e.getProperty().getValue()), Type.TRAY_NOTIFICATION));
     */
    userGroup = new ListSelect("User Groups");
    userGroup.addItems(DBManager.getDatabaseInstance().getUserGroups());
    userGroup.addItem("N/A");
    userGroup.setRows(6);
    userGroup.setNullSelectionAllowed(false);
    userGroup.setSizeFull();
    userGroup.setImmediate(true);
    /*
     * userGroup.addValueChangeListener(e -> Notification.show("User Group:",
     * String.valueOf(e.getProperty().getValue()), Type.TRAY_NOTIFICATION));
     */
    userRole = new ListSelect("User Roles");
    userRole.addItems(DBManager.getDatabaseInstance().getUserRoles());
    userRole.addItem("N/A");
    userRole.setRows(6);
    userRole.setNullSelectionAllowed(false);
    userRole.setSizeFull();
    userRole.setImmediate(true);
    /*
     * userRole.addValueChangeListener(e -> Notification.show("User Role:",
     * String.valueOf(e.getProperty().getValue()), Type.TRAY_NOTIFICATION));
     */
    userWorkgroup = new ListSelect("Workgroups");
    userWorkgroup.addItems(DBManager.getDatabaseInstance().getUserWorkgroups());
    userWorkgroup.setRows(6);
    userWorkgroup.setNullSelectionAllowed(false);
    userWorkgroup.setSizeFull();
    userWorkgroup.setImmediate(true);
    /*
     * userRole.addValueChangeListener(e -> Notification.show("User Role:",
     * String.valueOf(e.getProperty().getValue()), Type.TRAY_NOTIFICATION));
     */

    Button updateUser = new Button(buttonTitle);
    updateUser.setIcon(FontAwesome.WRENCH);
    updateUser.setDescription("Click here to update your user role and group!");

    refresh.addClickListener(new ClickListener() {
        private static final long serialVersionUID = -3610721151565496269L;

        @Override
        public void buttonClick(ClickEvent event) {
            refreshDataSources();
        }
    });

    updateUser.addClickListener(new ClickListener() {
        private static final long serialVersionUID = -3610721151565496909L;

        @Override
        public void buttonClick(ClickEvent event) {
            refreshDataSources();
        }
    });

    updateUserWorkgroup.addClickListener(new ClickListener() {

        /**
         * 
         */
        private static final long serialVersionUID = -295434651623561492L;

        @Override
        public void buttonClick(ClickEvent event) {
            try {
                Object selectedRow = ((SingleSelectionModel) usersGrid.getSelectionModel()).getSelectedRow();

                if (selectedRow == null || userWorkgroup.getValue().equals(null)) {
                    Notification("Something's missing!",
                            "Please make sure that you selected the user and workgroup! Make sure they are highligthed.",
                            "error");
                } else {
                    DBManager.getDatabaseInstance().adminUpdatesUserWorkgroup(
                            DBManager.getDatabaseInstance()
                                    .getUserGroupIDByName(userWorkgroup.getValue().toString()),
                            DBManager.getDatabaseInstance().getUserLDAPIDbyID(selectedRow.toString()));

                    // log changes in 'user_log' table
                    DBManager.getDatabaseInstance().logEverything(
                            LiferayAndVaadinUtils.getUser().getScreenName(), "Admin edited Workgroup");

                    Notification("Successfully Updated",
                            "Selected values are updated in the database. If it was a mistake, please remind that there is no 'undo' functionality yet.",
                            "success");

                }
            } catch (Exception e) {
                Notification("Something's missing!",
                        "Please make sure that you selected the user and workgroup! Make sure they are highligthed.",
                        "error");
            }
            refreshDataSources();
        }
    });

    updateUserGroup.addClickListener(new ClickListener() {

        /**
         * 
         */
        private static final long serialVersionUID = -5539382755814626288L;

        @Override
        public void buttonClick(ClickEvent event) {
            try {
                Object selectedRow = ((SingleSelectionModel) usersGrid.getSelectionModel()).getSelectedRow();

                if (selectedRow == null || userWorkgroup.getValue().equals(null)) {
                    Notification("Something's missing!",
                            "Please make sure that you selected the user and group! Make sure they are highligthed.",
                            "error");
                } else {
                    DBManager.getDatabaseInstance().adminUpdatesUserGroup(
                            DBManager.getDatabaseInstance()
                                    .getUserGroupIDByName(userGroup.getValue().toString()),
                            DBManager.getDatabaseInstance().getUserIDbyLDAPID(selectedRow.toString()));

                    // log changes in 'user_log' table
                    DBManager.getDatabaseInstance().logEverything(
                            LiferayAndVaadinUtils.getUser().getScreenName(), "Admin edited User Group");

                    Notification("Successfully Updated",
                            "Selected values are updated in the database. If it was a mistake, please remind that there is no 'undo' functionality yet.",
                            "success");

                }
            } catch (Exception e) {
                Notification("Something's missing!",
                        "Please make sure that you selected the user and group! Make sure they are highligthed.",
                        "error");
            }
            refreshDataSources();
        }
    });

    updateUserRightsAndRoles.addClickListener(new ClickListener() {

        /**
         * 
         */
        private static final long serialVersionUID = -295434651623561492L;

        @Override
        public void buttonClick(ClickEvent event) {
            try {
                Object selectedRow = ((SingleSelectionModel) usersGrid.getSelectionModel()).getSelectedRow();

                if (selectedRow == null || userDevice.getValue().equals(null)
                        || userRole.getValue().equals(null)) {
                    Notification("Something's missing!",
                            "Please make sure that you selected the user, device and role! Each list has to have one highligthed option.",
                            "error");
                } else {
                    DBManager.getDatabaseInstance().adminUpdatesUserRoleForDevice(
                            DBManager.getDatabaseInstance().getUserRoleIDbyDesc(userRole.getValue().toString()),
                            DBManager.getDatabaseInstance().getUserIDbyLDAPID(
                                    DBManager.getDatabaseInstance().getUserLDAPIDbyID(selectedRow.toString())),
                            DBManager.getDatabaseInstance()
                                    .getDeviceIDByName(userDevice.getValue().toString()));

                    // log changes in 'user_log' table
                    DBManager.getDatabaseInstance().logEverything(
                            LiferayAndVaadinUtils.getUser().getScreenName(),
                            "Admin edited Device, Role, Group");

                    Notification("Successfully Updated",
                            "Selected values are updated in the database. If it was a mistake, please remind that there is no 'undo' functionality yet.",
                            "success");

                }
            } catch (Exception e) {
                Notification("Something's missing!",
                        "Please make sure that you selected the user, device and role! Each list has to have one highligthed option.",
                        "error");
            }
            refreshDataSources();
        }
    });

    try {
        TableQuery tq = new TableQuery("user", DBManager.getDatabaseInstanceAlternative());
        tq.setVersionColumn("OPTLOCK");
        SQLContainer container = new SQLContainer(tq);

        // System.out.println("Print Container: " + container.size());
        container.setAutoCommit(isEnabled());

        usersGrid = new Grid(container);

        FieldGroup fieldGroup = usersGrid.getEditorFieldGroup();
        fieldGroup.addCommitHandler(new FieldGroup.CommitHandler() {
            /**
             * 
             */
            private static final long serialVersionUID = 3799806709907688919L;

            @Override
            public void preCommit(FieldGroup.CommitEvent commitEvent) throws FieldGroup.CommitException {

            }

            @Override
            public void postCommit(FieldGroup.CommitEvent commitEvent) throws FieldGroup.CommitException {

                Notification("Successfully Updated",
                        "Selected values are updated in the database. If it was a mistake, please remind that there is no 'undo' functionality yet.",
                        "success");

                refreshGrid();
            }

            private void refreshGrid() {
                container.refresh();
            }

        });

        usersGrid.addSelectionListener(selectionEvent -> { // Java 8
            // Get selection from the selection model
            Object selected = ((SingleSelectionModel) usersGrid.getSelectionModel()).getSelectedRow();

            if (selected != null) {

                // userDevice.select(bookAdmin.getSelectedTab().getCaption());
                userWorkgroup.select(DBManager.getDatabaseInstance().getUserWorkgroupByUserId(usersGrid
                        .getContainerDataSource().getItem(selected).getItemProperty("user_id").toString()));
                userGroup.select(DBManager.getDatabaseInstance().getUserRoleByUserId(usersGrid
                        .getContainerDataSource().getItem(selected).getItemProperty("user_id").toString()));

                userDevice.addValueChangeListener(new ValueChangeListener() {

                    /**
                     * 
                     */
                    private static final long serialVersionUID = -8696555155016720475L;

                    @Override
                    public void valueChange(com.vaadin.data.Property.ValueChangeEvent event) {
                        userRole.select(
                                DBManager.getDatabaseInstance().getUserGroupDescriptionByUserID(
                                        usersGrid.getContainerDataSource().getItem(selected)
                                                .getItemProperty("user_id").toString(),
                                        userDevice.getValue().toString()));

                    }
                });

                isAdmin.setValue(DBManager.getDatabaseInstance().hasAdminPanelAccess(usersGrid
                        .getContainerDataSource().getItem(selected).getItemProperty("user_id").toString()));

                Notification.show("Selected "
                        + usersGrid.getContainerDataSource().getItem(selected).getItemProperty("user_id"));
            } else
                Notification.show("Nothing selected");
        });

    } catch (Exception e) {
        // TODO Auto-generated catch block
        Notification("Something went wrong!",
                "Unable to update/connect the database. There may be a connection problem, please check your internet connection settings then try it again.",
                "error");
        e.printStackTrace();
    }

    /*
     * // only admins are allowed to see the admin panel ;) if (!DBManager.getDatabaseInstance()
     * .getUserAdminPanelAccessByLDAPId(LiferayAndVaadinUtils.getUser().getScreenName())
     * .equals("1")) { VerticalLayout errorLayout = new VerticalLayout();
     * infoLabel.setValue("ACCESS DENIED"); errorLayout.addComponent(infoLabel);
     * showErrorNotification( "Access Denied!",
     * "Sorry, you're not allowed to see anything here, at least your username told us so. Do you need assistance? Please contact 'info@qbic.uni-tuebingen.de'."
     * ); setCompositionRoot(errorLayout); return; }
     */

    this.setCaption("User Manager");

    final TabSheet userAdmin = new TabSheet();
    userAdmin.addStyleName(ValoTheme.TABSHEET_FRAMED);
    userAdmin.addTab(usersGrid());
    /*
     * userAdmin.addSelectedTabChangeListener(new SelectedTabChangeListener() {
     * 
     * @Override public void selectedTabChange(SelectedTabChangeEvent event) {
     * 
     * } });
     */

    gridLayout.setWidth("100%");

    // add components to the grid layout
    // gridLayout.addComponent(infoLabel, 0, 0, 3, 0);
    gridLayout.addComponent(userAdmin, 0, 1, 5, 1);
    gridLayout.addComponent(refresh, 0, 2);
    gridLayout.addComponent(isAdmin, 5, 2);
    // gridLayout.addComponent(save);

    gridLayout.addComponent(userWorkgroup, 0, 4);
    gridLayout.addComponent(userDevice, 1, 4);
    gridLayout.addComponent(userRole, 2, 4, 4, 4);
    gridLayout.addComponent(userGroup, 5, 4);
    gridLayout.addComponent(updateUserWorkgroup, 0, 5);
    gridLayout.addComponent(updateUserRightsAndRoles, 1, 5, 4, 5);
    gridLayout.addComponent(updateUserGroup, 5, 5);
    // gridLayout.addComponent(newContainerGrid, 1, 4);

    gridLayout.setSpacing(true);
    gridLayout.setSizeFull();
    setCompositionRoot(gridLayout);

}