Search in sources :

Example 1 with Div

use of org.zkoss.zhtml.Div in project adempiere by adempiere.

the class LoginPanel method init.

private void init() {
    //this.setContentSclass(ITheme.LOGIN_WINDOW_CLASS);
    Div div = new Div();
    ThemeUtils.addSclass("ad-loginpanel-header", div);
    // TODO - localization
    Label label = new Label("Login");
    ThemeUtils.addSclass("ad-loginpanel-header-text", label);
    div.appendChild(label);
    this.appendChild(div);
    Table table = new Table();
    table.setId("grdLogin");
    ThemeUtils.addSclass("ad-loginpanel-body", table);
    this.appendChild(table);
    Tr tr = new Tr();
    table.appendChild(tr);
    Td td = new Td();
    ThemeUtils.addSclass("ad-loginpanel-header-logo", td);
    tr.appendChild(td);
    td.setDynamicProperty("colspan", "2");
    Image image = new Image();
    image.setSrc(ThemeUtils.getLargeLogo());
    ThemeUtils.addSclass("ad-loginpanel-header-logo", image);
    td.appendChild(image);
    tr = new Tr();
    tr.setId("rowUser");
    table.appendChild(tr);
    td = new Td();
    tr.appendChild(td);
    ThemeUtils.addSclass("login-label", td);
    td.appendChild(lblUserId);
    td = new Td();
    ThemeUtils.addSclass("login-field", td);
    tr.appendChild(td);
    td.appendChild(txtUserId);
    tr = new Tr();
    tr.setId("rowPassword");
    table.appendChild(tr);
    td = new Td();
    tr.appendChild(td);
    ThemeUtils.addSclass("login-label", td);
    td.appendChild(lblPassword);
    td = new Td();
    ThemeUtils.addSclass("login-field", td);
    tr.appendChild(td);
    td.appendChild(txtPassword);
    tr = new Tr();
    tr.setId("rowLanguage");
    table.appendChild(tr);
    td = new Td();
    tr.appendChild(td);
    ThemeUtils.addSclass("login-label", td);
    td.appendChild(lblLanguage);
    td = new Td();
    ThemeUtils.addSclass("login-field", td);
    tr.appendChild(td);
    td.appendChild(lstLanguage);
    if (MSystem.isZKRememberUserAllowed()) {
        tr = new Tr();
        tr.setId("rowRememberMe");
        table.appendChild(tr);
        td = new Td();
        tr.appendChild(td);
        ThemeUtils.addSclass("login-label", td);
        td.appendChild(new Label(""));
        td = new Td();
        ThemeUtils.addSclass("login-field", td);
        tr.appendChild(td);
        td.appendChild(chkRememberMe);
    }
    div = new Div();
    ThemeUtils.addSclass("ad-loginpanel-footer", div);
    ConfirmPanel pnlButtons = new ConfirmPanel(false);
    pnlButtons.addActionListener(this);
    ThemeUtils.addSclass("ad-loginpanel-footer-pnl", pnlButtons);
    pnlButtons.getButton(ConfirmPanel.A_OK).setSclass("login-btn");
    div.appendChild(pnlButtons);
    this.appendChild(div);
    this.addEventListener(TokenEvent.ON_USER_TOKEN, new EventListener<Event>() {

        @Override
        public void onEvent(Event event) throws Exception {
            String[] data = (String[]) event.getData();
            try {
                int AD_Session_ID = Integer.parseInt(data[0]);
                MSession session = new MSession(Env.getCtx(), AD_Session_ID, null);
                if (session.get_ID() == AD_Session_ID) {
                    int AD_User_ID = session.getCreatedBy();
                    MUser user = MUser.get(Env.getCtx(), AD_User_ID);
                    if (user != null && user.get_ID() == AD_User_ID) {
                        String token = data[1];
                        if (BrowserToken.validateToken(session, user, token)) {
                            if (MSystem.isZKRememberUserAllowed()) {
                                txtUserId.setValue(user.getName());
                                onUserIdChange();
                                chkRememberMe.setChecked(true);
                            }
                            if (MSystem.isZKRememberPasswordAllowed()) {
                                txtPassword.setValue(token);
                                txtPassword.setAttribute("user.token.hash", token);
                                txtPassword.setAttribute("user.token.sid", AD_Session_ID);
                            }
                        }
                    }
                }
            } catch (Exception e) {
                //safe to ignore
                logger.log(Level.INFO, e.getLocalizedMessage(), e);
            }
        }
    });
}
Also used : Table(org.zkoss.zhtml.Table) Label(org.adempiere.webui.component.Label) MSession(org.compiere.model.MSession) Image(org.zkoss.zul.Image) WrongValueException(org.zkoss.zk.ui.WrongValueException) ApplicationException(org.adempiere.webui.exception.ApplicationException) Div(org.zkoss.zhtml.Div) Td(org.zkoss.zhtml.Td) ConfirmPanel(org.adempiere.webui.component.ConfirmPanel) Event(org.zkoss.zk.ui.event.Event) TokenEvent(org.adempiere.webui.event.TokenEvent) MUser(org.compiere.model.MUser) Tr(org.zkoss.zhtml.Tr)

Aggregations

ConfirmPanel (org.adempiere.webui.component.ConfirmPanel)1 Label (org.adempiere.webui.component.Label)1 TokenEvent (org.adempiere.webui.event.TokenEvent)1 ApplicationException (org.adempiere.webui.exception.ApplicationException)1 MSession (org.compiere.model.MSession)1 MUser (org.compiere.model.MUser)1 Div (org.zkoss.zhtml.Div)1 Table (org.zkoss.zhtml.Table)1 Td (org.zkoss.zhtml.Td)1 Tr (org.zkoss.zhtml.Tr)1 WrongValueException (org.zkoss.zk.ui.WrongValueException)1 Event (org.zkoss.zk.ui.event.Event)1 Image (org.zkoss.zul.Image)1