Example usage for com.google.gwt.dom.client Document createTextInputElement

List of usage examples for com.google.gwt.dom.client Document createTextInputElement

Introduction

In this page you can find the example usage for com.google.gwt.dom.client Document createTextInputElement.

Prototype

public InputElement createTextInputElement() 

Source Link

Usage

From source file:org.opencms.ui.client.login.CmsLoginTargetOpener.java

License:Open Source License

/**
 * Opens the login target for the given user name and password.<p>
 *
 * @param target the login target/*from   w  w  w  . j  a  v  a  2s.  co  m*/
 * @param user the user
 * @param password the password
 */
public void openTarget(final String target, final String user, final String password) {

    // Post a hidden form with user name and password fields,
    // to hopefully trigger the browser's password manager
    final FormPanel form = new FormPanel("_self");
    Document doc = Document.get();
    InputElement userField = doc.createTextInputElement();
    userField.setName("ocUname");
    InputElement passwordField = doc.createPasswordInputElement();
    passwordField.setName("ocPword");
    userField.setValue(user);
    passwordField.setValue(password);
    form.getElement().appendChild(userField);
    form.getElement().appendChild(passwordField);
    form.setMethod("post");
    form.setAction(target);
    form.setVisible(false);
    add(form);
    form.submit();
}

From source file:org.opencms.ui.client.login.CmsLoginTargetOpenerConnector.java

License:Open Source License

/**
 * @see com.vaadin.client.extensions.AbstractExtensionConnector#extend(com.vaadin.client.ServerConnector)
 *///from  ww  w . j a  v  a  2  s  .  c  om
@Override
protected void extend(ServerConnector extendedComponent) {

    registerRpc(I_CmsLoginTargetRpc.class, new I_CmsLoginTargetRpc() {

        private static final long serialVersionUID = 1L;

        public void openTarget(String target, boolean isPublicPC) {

            if (isPublicPC) {
                // in this case we do not want to trigger the browsers password manager, just call the login target
                Window.Location.assign(target);
            } else {
                // Post a hidden form with user name and password fields,
                // to hopefully trigger the browser's password manager
                Document doc = Document.get();
                FormElement formEl = (FormElement) doc.getElementById("opencms-login-form");
                CmsDebugLog.consoleLog("form target = " + formEl.getTarget());

                // make sure user name and password are children of the form
                Element user = doc.getElementById("hidden-username");
                Element password = doc.getElementById("hidden-password");

                if ((user != null) && !formEl.isOrHasChild(user)) {
                    formEl.appendChild(user);
                }
                if ((password != null) && !formEl.isOrHasChild(password)) {
                    formEl.appendChild(password);
                }

                InputElement requestedResourceField = doc.createTextInputElement();
                requestedResourceField.setName(CmsGwtConstants.PARAM_LOGIN_REDIRECT);
                requestedResourceField.setValue(target);

                formEl.appendChild(requestedResourceField);
                formEl.submit();
            }
        }
    });
}