Example usage for com.google.gwt.user.client.ui HTMLPanel HTMLPanel

List of usage examples for com.google.gwt.user.client.ui HTMLPanel HTMLPanel

Introduction

In this page you can find the example usage for com.google.gwt.user.client.ui HTMLPanel HTMLPanel.

Prototype

private HTMLPanel(Element elem) 

Source Link

Document

Construct a new HTMLPanel with the specified element.

Usage

From source file:net.scran24.admin.client.Scran24Admin.java

private void createSurvey() {
    content.clear();/*from   w w w  . j av  a 2  s . c  o m*/
    content.add(new HTMLPanel("<h1>New survey</h1>"));
    content.add(new NewSurvey());
}

From source file:net.scran24.admin.client.Scran24Admin.java

private void manageSurveys() {
    content.clear();//ww  w .j  a v a 2 s . c  om
    content.add(new HTMLPanel("<h1>Survey management</h1>"));
    content.add(new SurveyManagement());
}

From source file:net.scran24.admin.client.Scran24Admin.java

private void downloadMissingFoods() {
    content.clear();//  w w w.j  a v  a2 s . co m
    content.add(new HTMLPanel("<h1>Missing foods report</h1>"));
    content.add(new DownloadMissingFoods());
}

From source file:net.scran24.admin.client.Scran24Admin.java

private void uploadAdminAccounts() {
    content.clear();/*from ww  w  . ja  v  a  2 s  .c  o m*/
    content.add(new HTMLPanel("<h1>Upload admin accounts</h1>"));

    final FlowPanel messageDiv = new FlowPanel();

    content.add(messageDiv);

    content.add(new UserInfoUpload("admin", "admin", new ArrayList<String>(), new Callback1<Option<String>>() {
        @Override
        public void call(Option<String> res) {
            res.accept(new Option.SideEffectVisitor<String>() {
                @Override
                public void visitSome(String error) {
                    messageDiv.clear();
                    messageDiv.getElement().getStyle().setColor("#d00");
                    messageDiv.add(new HTMLPanel(SafeHtmlUtils.fromString(error)));
                }

                @Override
                public void visitNone() {
                    messageDiv.clear();
                    messageDiv.getElement().getStyle().setColor("#0d0");
                    messageDiv.add(
                            new HTMLPanel(SafeHtmlUtils.fromString("Admin accounts uploaded successfully")));
                }
            });
        }
    }));
}

From source file:net.scran24.admin.client.SurveyManagement.java

private void setControlsFor(String id) {
    surveyControls.clear();/*  w  w  w.jav  a2  s.co  m*/

    final HTMLPanel idLabel = new HTMLPanel("<h2>" + SafeHtmlUtils.htmlEscape(id) + "</h2>");
    final HTMLPanel staffUploadLabel = new HTMLPanel("<h3>Upload staff accounts</h3>");
    final FlowPanel messageDiv = new FlowPanel();
    messageDiv.getElement().addClassName("scran24-admin-survey-id-message");

    List<String> permissions = Arrays.asList(new String[] { "downloadData:" + id, "readSurveys:" + id,
            "uploadUserInfo:" + id, "surveyControl:" + id });

    final UserInfoUpload staffUpload = new UserInfoUpload(id, "staff", permissions,
            new Callback1<Option<String>>() {
                @Override
                public void call(Option<String> res) {
                    res.accept(new Option.SideEffectVisitor<String>() {
                        @Override
                        public void visitSome(String error) {
                            messageDiv.clear();
                            messageDiv.getElement().getStyle().setColor("#d00");
                            messageDiv.add(new HTMLPanel(SafeHtmlUtils.fromString(error)));
                        }

                        @Override
                        public void visitNone() {
                            messageDiv.clear();
                            messageDiv.getElement().getStyle().setColor("#0d0");
                            messageDiv.add(new HTMLPanel(
                                    SafeHtmlUtils.fromString("Staff accounts uploaded successfully")));
                        }
                    });
                }
            });

    surveyControls.add(idLabel);
    surveyControls.add(staffUploadLabel);
    surveyControls.add(messageDiv);
    surveyControls.add(staffUpload);

}

From source file:net.scran24.admin.client.SurveyManagement.java

public SurveyManagement() {
    final FlowPanel contents = new FlowPanel();

    contents.add(new LoadingPanel("Loading surveys..."));

    service.listSurveys(new AsyncCallback<List<String>>() {
        @Override/*from   w w  w  .java  2 s.c o  m*/
        public void onFailure(Throwable arg0) {
            contents.clear();
            contents.add(new Label("Server error - please check server logs"));
        }

        @Override
        public void onSuccess(List<String> surveys) {
            contents.clear();

            if (surveys.isEmpty()) {
                contents.add(new HTMLPanel("<h2>No surveys to manage.</h2>"));
            } else {

                Collections.sort(surveys);

                FlowPanel surveySelector = new FlowPanel();

                final ListBox surveyIdList = new ListBox(false);

                for (String id : surveys)
                    surveyIdList.addItem(id);

                surveySelector.add(new Label("Select survey: "));
                surveySelector.add(surveyIdList);

                contents.add(surveySelector);

                surveyControls = new FlowPanel();

                contents.add(surveyControls);

                surveyIdList.addChangeHandler(new ChangeHandler() {
                    @Override
                    public void onChange(ChangeEvent arg0) {
                        setControlsFor(surveyIdList.getItemText(surveyIdList.getSelectedIndex()));
                    }
                });

                surveyIdList.setSelectedIndex(0);
                setControlsFor(surveyIdList.getItemText(surveyIdList.getSelectedIndex()));
            }
        }
    });

    initWidget(contents);
}

From source file:net.scran24.admin.client.UserManager.java

public UserManager() {
    FlowPanel contents = new FlowPanel();

    final FormPanel form = new FormPanel();
    form.setAction(GWT.getModuleBaseURL() + "uploadUserInfo");

    form.setEncoding(FormPanel.ENCODING_MULTIPART);
    form.setMethod(FormPanel.METHOD_POST);

    VerticalPanel panel = new VerticalPanel();
    form.setWidget(panel);//ww  w .  j a  va 2s  . c om

    final FileUpload upload = new FileUpload();
    upload.setName("file");
    panel.add(upload);

    RadioButton append = new RadioButton("mode", "Append to existing user list");
    append.setFormValue("append");

    final RadioButton replace = new RadioButton("mode", "Replace existing user list");
    replace.setFormValue("replace");

    replace.setValue(true);

    panel.add(append);
    panel.add(replace);

    panel.add(WidgetFactory.createButton("Upload", new ClickHandler() {
        @Override
        public void onClick(ClickEvent event) {
            form.submit();
        }
    }));

    form.addSubmitHandler(new SubmitHandler() {
        @Override
        public void onSubmit(SubmitEvent event) {
            if (upload.getFilename().isEmpty()) {
                Window.alert("Please choose a .csv file containing user information to upload");
                event.cancel();
            } else if (replace.getValue())
                if (!Window.confirm(
                        "Doing this will delete all user information from the database and replace it with the list you are submitting. Proceed?"))
                    event.cancel();
        }
    });

    form.addSubmitCompleteHandler(new SubmitCompleteHandler() {
        @Override
        public void onSubmitComplete(SubmitCompleteEvent event) {
            // This is not a very robust way of detecting the status code,
            // but unfortunately there does not seem to be a better way of doing
            // this
            // that supports IE8 -- Ivan.
            // https://code.google.com/p/google-web-toolkit/issues/detail?id=7365

            String result = event.getResults();

            if (result.equals("OK"))
                Window.alert("User information uploaded.");
            else if (result.startsWith("ERR:")) {
                Window.alert("There was a problem uploading the user information: " + result.substring(4));
            } else if (result.contains("401")) {
                LoginForm.showPopup(new Callback1<UserInfo>() {
                    @Override
                    public void call(UserInfo info) {
                        form.submit();
                    }
                });
            } else if (result.contains("403")) {
                // User is not authorised, e.g. someone has logged on as admin,
                // opened the user upload tab and timed out, then someone else
                // logged on as someone who does not have the right to
                // upload users. In this case, let them know and refresh the page
                // to either show the UI that corresponds to their set of permissions
                // or redirect them to another page.

                Window.alert("You are not authorised to upload user information.");
                Location.reload();
            }
        }
    });
    contents.add(new HTMLPanel("<h2>Staff user accounts</h2>"));
    contents.add(new Button("Add"));

    contents.add(new HTMLPanel("<h2>Respondent user accounts</h2>"));
    contents.add(form);

    initWidget(contents);
}

From source file:net.scran24.common.client.LoginForm.java

License:Apache License

private void doLogin(final String supportEmail) {
    loginService.login(EmbeddedData.surveyId(), userText.getText(), passText.getText(),
            new AsyncCallback<UserInfo>() {
                @Override//from   w w  w.j a  v  a2  s.  com
                public void onSuccess(UserInfo result) {
                    onSuccess.call(result);
                }

                @Override
                public void onFailure(Throwable caught) {
                    errorMessage.clear();
                    if (caught instanceof CredentialsException)
                        errorMessage.add(new HTMLPanel(SafeHtmlUtils
                                .fromSafeConstant(messages.loginForm_passwordNotRecognised(supportEmail))));
                    else
                        errorMessage.add(new HTMLPanel(SafeHtmlUtils
                                .fromSafeConstant(messages.loginForm_serviceException(supportEmail))));
                    loginButton.setEnabled(true);
                }
            });

}

From source file:net.scran24.common.client.LoginForm.java

License:Apache License

public LoginForm(final Callback1<UserInfo> onSuccess, SafeHtml prompt) {
    this.onSuccess = onSuccess;
    Grid g = new Grid(2, 2);

    g.setCellPadding(5);/*from   w  w w  .j a  va2 s  . co m*/
    Label userLabel = new Label(messages.loginForm_userNameLabel());
    Label passLabel = new Label(messages.loginForm_passwordLabel());

    this.userText = new TextBox();
    this.passText = new PasswordTextBox();

    g.setWidget(0, 0, userLabel);
    g.setWidget(1, 0, passLabel);
    g.setWidget(0, 1, userText);
    g.setWidget(1, 1, passText);

    VerticalPanel contents = new VerticalPanel();
    contents.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER);

    FlowPanel linkPanel = new FlowPanel();

    linkPanel.add(WidgetFactory.createTutorialVideoLink());

    HTMLPanel pp = new HTMLPanel(prompt);
    contents.add(pp);
    HTMLPanel divider = new HTMLPanel(messages.loginForm_logInSeparator());
    divider.getElement().addClassName("intake24-login-form-divider");
    contents.add(divider);
    contents.add(linkPanel);
    contents.add(g);

    errorMessage = new FlowPanel();
    contents.add(errorMessage);

    loginButton = WidgetFactory.createButton(messages.loginForm_logInButtonLabel(), new ClickHandler() {
        @Override
        public void onClick(ClickEvent event) {
            initLogin();
        }
    });

    loginButton.getElement().setId("intake24-login-button");

    passText.addKeyPressHandler(new KeyPressHandler() {
        @Override
        public void onKeyPress(KeyPressEvent event) {
            if (event.getNativeEvent().getKeyCode() == KeyCodes.KEY_ENTER)
                initLogin();
        }
    });

    userText.addKeyPressHandler(new KeyPressHandler() {
        @Override
        public void onKeyPress(KeyPressEvent event) {
            if (event.getNativeEvent().getKeyCode() == KeyCodes.KEY_ENTER)
                initLogin();
        }
    });

    contents.add(WidgetFactory.createButtonsPanel(loginButton));
    contents.addStyleName("intake24-login-form");

    initWidget(contents);
}

From source file:net.scran24.common.client.Section.java

public static <T extends Widget> Section<T> withSimpleHeader(String title, T content) {
    return new Section<T>(
            new HTMLPanel(SafeHtmlUtils.fromSafeConstant("<h2>" + SafeHtmlUtils.htmlEscape(title) + "</h2>")),
            content);//  w  w w .j  av  a2  s . com
}