Example usage for org.apache.wicket.ajax AjaxRequestTarget prependJavaScript

List of usage examples for org.apache.wicket.ajax AjaxRequestTarget prependJavaScript

Introduction

In this page you can find the example usage for org.apache.wicket.ajax AjaxRequestTarget prependJavaScript.

Prototype

void prependJavaScript(CharSequence javascript);

Source Link

Document

Adds javascript that will be evaluated on the client side before components are replaced.

Usage

From source file:org.apache.directory.fortress.web.panel.RoleAdminDetailPanel.java

License:Apache License

private void addPermOUSearchModal() {
    final ModalWindow permousModalWindow;
    add(permousModalWindow = new ModalWindow("permoumodal"));
    final OUSearchModalPanel permouSearchModalPanel = new OUSearchModalPanel(permousModalWindow.getContentId(),
            permousModalWindow, false);/*from   w  w  w  .j ava  2  s . c  o m*/
    permousModalWindow.setContent(permouSearchModalPanel);
    permousModalWindow.setWindowClosedCallback(new ModalWindow.WindowClosedCallback() {
        /** Default serialVersionUID */
        private static final long serialVersionUID = 1L;

        @Override
        public void onClose(AjaxRequestTarget target) {
            OrgUnit ou = permouSearchModalPanel.getSelection();
            if (ou != null) {
                permouSelection = ou.getName();
                AdminRole adminRole = (AdminRole) getDefaultModelObject();
                adminRole.setOsP(permouSelection);
                target.add(permouCB);
            }
        }
    });

    add(new AjaxButton(GlobalIds.PERMOU_SEARCH) {
        /** Default serialVersionUID */
        private static final long serialVersionUID = 1L;

        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            String msg = "clicked on permission OU search";
            msg += permouSelection != null ? ": " + permouSelection : "";
            permouSearchModalPanel.setSearchVal(permouSelection);
            LOG.debug(msg);
            target.prependJavaScript(GlobalIds.WICKET_WINDOW_UNLOAD_CONFIRMATION_FALSE);
            permousModalWindow.show(target);
        }

        @Override
        protected void updateAjaxAttributes(AjaxRequestAttributes attributes) {
            super.updateAjaxAttributes(attributes);
            AjaxCallListener ajaxCallListener = new AjaxCallListener() {
                /** Default serialVersionUID */
                private static final long serialVersionUID = 1L;

                @Override
                public CharSequence getFailureHandler(Component component) {
                    return GlobalIds.WINDOW_LOCATION_REPLACE_COMMANDER_HOME_HTML;
                }
            };
            attributes.getAjaxCallListeners().add(ajaxCallListener);
        }
    });

    permousModalWindow.setTitle("Perm Organization Selection Modal");
    permousModalWindow.setInitialWidth(450);
    permousModalWindow.setInitialHeight(450);
    permousModalWindow.setCookieName("permou-modal");

    add(new AjaxButton("permou.delete") {
        /** Default serialVersionUID */
        private static final long serialVersionUID = 1L;

        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            String msg = "clicked on permous.delete";
            if (StringUtils.isNotEmpty(permouSelection)) {
                msg += " selection:" + permouSelection;
                AdminRole adminRole = (AdminRole) form.getModel().getObject();
                if (adminRole.getOsPSet() != null) {
                    adminRole.getOsPSet().remove(permouSelection);
                    permous.remove(permouSelection);
                    permouSelection = "";
                    target.add(permouCB);
                    msg += ", was removed from local, commit to persist changes on server";
                } else {
                    msg += ", no action taken because org unit does not have parent set";
                }
            } else {
                msg += ", no action taken because parents selection is empty";
            }
            LOG.debug(msg);
        }

        @Override
        protected void updateAjaxAttributes(AjaxRequestAttributes attributes) {
            super.updateAjaxAttributes(attributes);
            AjaxCallListener ajaxCallListener = new AjaxCallListener() {
                /** Default serialVersionUID */
                private static final long serialVersionUID = 1L;

                @Override
                public CharSequence getFailureHandler(Component component) {
                    return GlobalIds.WINDOW_LOCATION_REPLACE_COMMANDER_HOME_HTML;
                }
            };
            attributes.getAjaxCallListeners().add(ajaxCallListener);
        }
    });
}

From source file:org.apache.directory.fortress.web.panel.RoleAdminDetailPanel.java

License:Apache License

private void addUserOUSearchModal() {
    final ModalWindow userousModalWindow;
    add(userousModalWindow = new ModalWindow("useroumodal"));
    final OUSearchModalPanel userouSearchModalPanel = new OUSearchModalPanel(userousModalWindow.getContentId(),
            userousModalWindow, true);//from   w  w w.  j a  v  a 2  s.c o  m
    userousModalWindow.setContent(userouSearchModalPanel);
    userousModalWindow.setWindowClosedCallback(new ModalWindow.WindowClosedCallback() {
        /** Default serialVersionUID */
        private static final long serialVersionUID = 1L;

        @Override
        public void onClose(AjaxRequestTarget target) {
            OrgUnit ou = userouSearchModalPanel.getSelection();
            if (ou != null) {
                userouSelection = ou.getName();
                AdminRole adminRole = (AdminRole) getDefaultModelObject();
                adminRole.setOsU(userouSelection);
                target.add(userouCB);
            }
        }
    });

    add(new AjaxButton(GlobalIds.USEROU_SEARCH) {
        /** Default serialVersionUID */
        private static final long serialVersionUID = 1L;

        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            String msg = "clicked on user OU search";
            msg += userouSelection != null ? ": " + userouSelection : "";
            userouSearchModalPanel.setSearchVal(userouSelection);
            LOG.debug(msg);
            target.prependJavaScript(GlobalIds.WICKET_WINDOW_UNLOAD_CONFIRMATION_FALSE);
            userousModalWindow.show(target);
        }

        @Override
        protected void updateAjaxAttributes(AjaxRequestAttributes attributes) {
            super.updateAjaxAttributes(attributes);
            AjaxCallListener ajaxCallListener = new AjaxCallListener() {
                /** Default serialVersionUID */
                private static final long serialVersionUID = 1L;

                @Override
                public CharSequence getFailureHandler(Component component) {
                    return GlobalIds.WINDOW_LOCATION_REPLACE_COMMANDER_HOME_HTML;
                }
            };
            attributes.getAjaxCallListeners().add(ajaxCallListener);
        }
    });

    userousModalWindow.setTitle("User Organization Selection Modal");
    userousModalWindow.setInitialWidth(450);
    userousModalWindow.setInitialHeight(450);
    userousModalWindow.setCookieName("permou-modal");

    add(new AjaxButton("userou.delete") {
        /** Default serialVersionUID */
        private static final long serialVersionUID = 1L;

        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            String msg = "clicked on userous.delete";
            if (StringUtils.isNotEmpty(userouSelection)) {
                msg += " selection:" + userouSelection;
                AdminRole adminRole = (AdminRole) form.getModel().getObject();
                if (adminRole.getOsUSet() != null) {
                    adminRole.getOsUSet().remove(userouSelection);
                    userous.remove(userouSelection);
                    userouSelection = "";
                    target.add(userouCB);
                    msg += ", was removed from local, commit to persist changes on server";
                } else {
                    msg += ", no action taken because org unit does not have parent set";
                }
            } else {
                msg += ", no action taken because parents selection is empty";
            }
            LOG.debug(msg);
        }

        @Override
        protected void updateAjaxAttributes(AjaxRequestAttributes attributes) {
            super.updateAjaxAttributes(attributes);
            AjaxCallListener ajaxCallListener = new AjaxCallListener() {
                /** Default serialVersionUID */
                private static final long serialVersionUID = 1L;

                @Override
                public CharSequence getFailureHandler(Component component) {
                    return GlobalIds.WINDOW_LOCATION_REPLACE_COMMANDER_HOME_HTML;
                }
            };
            attributes.getAjaxCallListeners().add(ajaxCallListener);
        }
    });
}

From source file:org.apache.directory.fortress.web.panel.RoleAdminDetailPanel.java

License:Apache License

private void addBeginRoleSearchModal() {
    final ModalWindow beginRoleModalWindow;
    add(beginRoleModalWindow = new ModalWindow("beginrolesmodal"));
    final RoleSearchModalPanel beginRoleSearchModalPanel = new RoleSearchModalPanel(
            beginRoleModalWindow.getContentId(), beginRoleModalWindow, false);
    beginRoleModalWindow.setContent(beginRoleSearchModalPanel);
    beginRoleModalWindow.setWindowClosedCallback(new ModalWindow.WindowClosedCallback() {
        /** Default serialVersionUID */
        private static final long serialVersionUID = 1L;

        @Override//from  w  w  w  .  j  a  v  a  2  s. co m
        public void onClose(AjaxRequestTarget target) {
            UserRole userRole = beginRoleSearchModalPanel.getRoleSelection();
            if (userRole != null) {
                AdminRole adminRole = (AdminRole) getDefaultModelObject();
                adminRole.setBeginRange(userRole.getName());
                target.add(beginRangeTF);
            }
        }
    });

    add(new AjaxButton(GlobalIds.BEGIN_RANGE_SEARCH) {
        /** Default serialVersionUID */
        private static final long serialVersionUID = 1L;

        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            AdminRole adminRole = (AdminRole) form.getModel().getObject();
            beginRoleSearchModalPanel.setRoleSearchVal(adminRole.getBeginRange());
            target.prependJavaScript(GlobalIds.WICKET_WINDOW_UNLOAD_CONFIRMATION_FALSE);
            beginRoleModalWindow.show(target);
        }

        @Override
        protected void updateAjaxAttributes(AjaxRequestAttributes attributes) {
            super.updateAjaxAttributes(attributes);
            AjaxCallListener ajaxCallListener = new AjaxCallListener() {
                /** Default serialVersionUID */
                private static final long serialVersionUID = 1L;

                @Override
                public CharSequence getFailureHandler(Component component) {
                    return GlobalIds.WINDOW_LOCATION_REPLACE_COMMANDER_HOME_HTML;
                }
            };
            attributes.getAjaxCallListeners().add(ajaxCallListener);
        }
    });

    beginRoleModalWindow.setTitle("Begin Range Role Selection Modal");
    beginRoleModalWindow.setInitialWidth(700);
    beginRoleModalWindow.setInitialHeight(450);
    beginRoleModalWindow.setCookieName(ROLE_ASSIGN_MODAL);
}

From source file:org.apache.directory.fortress.web.panel.RoleAdminDetailPanel.java

License:Apache License

private void addEndRoleSearchModal() {
    final ModalWindow endRoleModalWindow;
    add(endRoleModalWindow = new ModalWindow("endrolesmodal"));
    final RoleSearchModalPanel endRoleSearchModalPanel = new RoleSearchModalPanel(
            endRoleModalWindow.getContentId(), endRoleModalWindow, false);
    endRoleModalWindow.setContent(endRoleSearchModalPanel);
    endRoleModalWindow.setWindowClosedCallback(new ModalWindow.WindowClosedCallback() {
        /** Default serialVersionUID */
        private static final long serialVersionUID = 1L;

        @Override//w  w w . jav a2s  . c o m
        public void onClose(AjaxRequestTarget target) {
            UserRole userRole = endRoleSearchModalPanel.getRoleSelection();
            if (userRole != null) {
                AdminRole adminRole = (AdminRole) getDefaultModelObject();
                adminRole.setEndRange(userRole.getName());
                target.add(endRangeTF);
            }
        }
    });

    add(new AjaxButton(GlobalIds.END_RANGE_SEARCH) {
        /** Default serialVersionUID */
        private static final long serialVersionUID = 1L;

        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            AdminRole adminRole = (AdminRole) form.getModel().getObject();
            endRoleSearchModalPanel.setRoleSearchVal(adminRole.getBeginRange());
            endRoleSearchModalPanel.setParentSearch(true);
            target.prependJavaScript(GlobalIds.WICKET_WINDOW_UNLOAD_CONFIRMATION_FALSE);
            endRoleModalWindow.show(target);
        }

        @Override
        protected void updateAjaxAttributes(AjaxRequestAttributes attributes) {
            super.updateAjaxAttributes(attributes);
            AjaxCallListener ajaxCallListener = new AjaxCallListener() {
                /** Default serialVersionUID */
                private static final long serialVersionUID = 1L;

                @Override
                public CharSequence getFailureHandler(Component component) {
                    return GlobalIds.WINDOW_LOCATION_REPLACE_COMMANDER_HOME_HTML;
                }
            };
            attributes.getAjaxCallListeners().add(ajaxCallListener);
        }
    });

    endRoleModalWindow.setTitle("End Range Role Selection Modal");
    endRoleModalWindow.setInitialWidth(700);
    endRoleModalWindow.setInitialHeight(450);
    endRoleModalWindow.setCookieName(ROLE_ASSIGN_MODAL);
}

From source file:org.apache.directory.fortress.web.panel.SDListPanel.java

License:Apache License

private void addRoleSearchModal(Radio roleRb) {
    final ModalWindow rolesModalWindow;
    listForm.add(rolesModalWindow = new ModalWindow("rolesearchmodal"));
    final RoleSearchModalPanel roleSearchModalPanel = new RoleSearchModalPanel(rolesModalWindow.getContentId(),
            rolesModalWindow, false);/*from   ww  w  .ja va  2 s.  c o m*/
    rolesModalWindow.setContent(roleSearchModalPanel);
    rolesModalWindow.setWindowClosedCallback(new ModalWindow.WindowClosedCallback() {
        /** Default serialVersionUID */
        private static final long serialVersionUID = 1L;

        @Override
        public void onClose(AjaxRequestTarget target) {
            UserRole roleConstraint = roleSearchModalPanel.getRoleSelection();
            if (roleConstraint != null) {
                log.debug("modal selected:" + roleConstraint.getName());
                searchVal = roleConstraint.getName();
                selectedRadioButton = ROLES;
                target.add(radioGroup);
            }
        }
    });

    roleRb.add(new SecureIndicatingAjaxLink("roleAssignLinkLbl", GlobalIds.REVIEW_MGR, "findRoles") {
        /** Default serialVersionUID */
        private static final long serialVersionUID = 1L;

        public void onClick(AjaxRequestTarget target) {
            String msg = "clicked on roles search";
            msg += "roleSelection: " + searchVal;
            roleSearchModalPanel.setRoleSearchVal(searchVal);
            log.debug(msg);
            target.prependJavaScript(GlobalIds.WICKET_WINDOW_UNLOAD_CONFIRMATION_FALSE);
            rolesModalWindow.show(target);
        }

        @Override
        protected void updateAjaxAttributes(AjaxRequestAttributes attributes) {
            super.updateAjaxAttributes(attributes);
            AjaxCallListener ajaxCallListener = new AjaxCallListener() {
                /** Default serialVersionUID */
                private static final long serialVersionUID = 1L;

                @Override
                public CharSequence getFailureHandler(Component component) {
                    return GlobalIds.WINDOW_LOCATION_REPLACE_COMMANDER_HOME_HTML;
                }
            };
            attributes.getAjaxCallListeners().add(ajaxCallListener);
        }
    });

    rolesModalWindow.setTitle("Role Search Modal");
    rolesModalWindow.setInitialWidth(700);
    rolesModalWindow.setInitialHeight(450);
    rolesModalWindow.setCookieName("role-assign-modal");
}

From source file:org.apache.directory.fortress.web.panel.UserListPanel.java

License:Apache License

private void addRoleSearchModal(Radio roleRb) {
    final ModalWindow rolesModalWindow;
    userformsearchfields.add(rolesModalWindow = new ModalWindow("rolesearchmodal"));
    final RoleSearchModalPanel roleSearchModalPanel = new RoleSearchModalPanel(rolesModalWindow.getContentId(),
            rolesModalWindow, false);//from w w w  .  j  av a2s . co m
    rolesModalWindow.setContent(roleSearchModalPanel);
    rolesModalWindow.setWindowClosedCallback(new ModalWindow.WindowClosedCallback() {
        /** Default serialVersionUID */
        private static final long serialVersionUID = 1L;

        @Override
        public void onClose(AjaxRequestTarget target) {
            UserRole roleConstraint = roleSearchModalPanel.getRoleSelection();
            if (roleConstraint != null) {
                LOG.debug("modal selected:" + roleConstraint.getName());
                searchData.setField1(roleConstraint.getName());
                selectedRadioButton = ROLES;
                enableRoleSearch();
                target.add(searchFields);
                target.add(radioGroup);
            }
        }
    });

    roleRb.add(new SecureIndicatingAjaxLink("roleAssignLinkLbl", GlobalIds.REVIEW_MGR, GlobalIds.FIND_ROLES) {
        /** Default serialVersionUID */
        private static final long serialVersionUID = 1L;

        public void onClick(AjaxRequestTarget target) {
            roleSearchModalPanel.setRoleSearchVal(searchData.getField1());
            roleSearchModalPanel.setAdmin(false);
            target.prependJavaScript(GlobalIds.WICKET_WINDOW_UNLOAD_CONFIRMATION_FALSE);
            rolesModalWindow.show(target);
        }

        @Override
        protected void updateAjaxAttributes(AjaxRequestAttributes attributes) {
            super.updateAjaxAttributes(attributes);
            AjaxCallListener ajaxCallListener = new AjaxCallListener() {
                /** Default serialVersionUID */
                private static final long serialVersionUID = 1L;

                @Override
                public CharSequence getFailureHandler(Component component) {
                    return GlobalIds.WINDOW_LOCATION_REPLACE_COMMANDER_HOME_HTML;
                }
            };
            attributes.getAjaxCallListeners().add(ajaxCallListener);
        }
    });
    rolesModalWindow.setTitle("RBAC Role Search Modal");
    rolesModalWindow.setInitialWidth(700);
    rolesModalWindow.setInitialHeight(450);
    rolesModalWindow.setCookieName("role-assign-modal");
}

From source file:org.apache.directory.fortress.web.panel.UserListPanel.java

License:Apache License

private void addAdminRoleSearchModal(Radio adminRoleRb) {
    final ModalWindow adminRolesModalWindow;
    userformsearchfields.add(adminRolesModalWindow = new ModalWindow("adminrolesearchmodal"));
    final RoleSearchModalPanel adminRoleSearchModalPanel = new RoleSearchModalPanel(
            adminRolesModalWindow.getContentId(), adminRolesModalWindow, true);
    adminRolesModalWindow.setContent(adminRoleSearchModalPanel);
    adminRolesModalWindow.setWindowClosedCallback(new ModalWindow.WindowClosedCallback() {
        /** Default serialVersionUID */
        private static final long serialVersionUID = 1L;

        @Override//from   ww  w .ja v a  2s. com
        public void onClose(AjaxRequestTarget target) {
            UserRole roleConstraint = adminRoleSearchModalPanel.getRoleSelection();
            if (roleConstraint != null) {
                searchData.setField1(roleConstraint.getName());
                selectedRadioButton = ADMIN_ROLES;
                enableAdminSearch();
                target.add(searchFields);
                target.add(radioGroup);
            }
        }
    });

    adminRoleRb.add(new SecureIndicatingAjaxLink("adminRoleAssignLinkLbl", GlobalIds.DEL_REVIEW_MGR,
            GlobalIds.FIND_ROLES) {
        /** Default serialVersionUID */
        private static final long serialVersionUID = 1L;

        public void onClick(AjaxRequestTarget target) {
            String msg = "clicked on admin roles search";
            msg += "adminRoleSelection: " + searchData.getField1();
            adminRoleSearchModalPanel.setRoleSearchVal(searchData.getField1());
            adminRoleSearchModalPanel.setAdmin(true);
            LOG.debug(msg);
            target.prependJavaScript(GlobalIds.WICKET_WINDOW_UNLOAD_CONFIRMATION_FALSE);
            adminRolesModalWindow.show(target);
        }

        @Override
        protected void updateAjaxAttributes(AjaxRequestAttributes attributes) {
            super.updateAjaxAttributes(attributes);
            AjaxCallListener ajaxCallListener = new AjaxCallListener() {
                /** Default serialVersionUID */
                private static final long serialVersionUID = 1L;

                @Override
                public CharSequence getFailureHandler(Component component) {
                    return GlobalIds.WINDOW_LOCATION_REPLACE_COMMANDER_HOME_HTML;
                }
            };
            attributes.getAjaxCallListeners().add(ajaxCallListener);
        }
    });
    adminRolesModalWindow.setTitle("Admin Role Search Modal");
    adminRolesModalWindow.setInitialWidth(700);
    adminRolesModalWindow.setInitialHeight(450);
    adminRolesModalWindow.setCookieName("role-assign-modal");
}

From source file:org.apache.directory.fortress.web.panel.UserListPanel.java

License:Apache License

private void addOUSearchModal(Radio ouRb) {
    final ModalWindow ousModalWindow;
    userformsearchfields.add(ousModalWindow = new ModalWindow("ousearchmodal"));
    final OUSearchModalPanel ouSearchModalPanel = new OUSearchModalPanel(ousModalWindow.getContentId(),
            ousModalWindow, true);//w  w w .  j  a  v  a  2  s .  c om
    ousModalWindow.setContent(ouSearchModalPanel);
    ousModalWindow.setWindowClosedCallback(new ModalWindow.WindowClosedCallback() {
        /** Default serialVersionUID */
        private static final long serialVersionUID = 1L;

        @Override
        public void onClose(AjaxRequestTarget target) {
            OrgUnit ou = ouSearchModalPanel.getSelection();
            if (ou != null) {
                searchData.setField1(ou.getName());
            }
            selectedRadioButton = OUS;
            enableOuSearch();
            target.add(searchFields);
            target.add(radioGroup);
        }
    });
    ouRb.add(new SecureIndicatingAjaxLink("ouAssignLinkLbl", GlobalIds.DEL_REVIEW_MGR, "searchOU") {
        /** Default serialVersionUID */
        private static final long serialVersionUID = 1L;

        public void onClick(AjaxRequestTarget target) {
            ouSearchModalPanel.setSearchVal(searchData.getField1());
            target.prependJavaScript(GlobalIds.WICKET_WINDOW_UNLOAD_CONFIRMATION_FALSE);
            ousModalWindow.show(target);
        }

        @Override
        protected void updateAjaxAttributes(AjaxRequestAttributes attributes) {
            super.updateAjaxAttributes(attributes);
            AjaxCallListener ajaxCallListener = new AjaxCallListener() {
                /** Default serialVersionUID */
                private static final long serialVersionUID = 1L;

                @Override
                public CharSequence getFailureHandler(Component component) {
                    return GlobalIds.WINDOW_LOCATION_REPLACE_COMMANDER_HOME_HTML;
                }
            };
            attributes.getAjaxCallListeners().add(ajaxCallListener);
        }
    });

    ousModalWindow.setTitle("User Organizational Unit Search Modal");
    ousModalWindow.setInitialWidth(450);
    ousModalWindow.setInitialHeight(450);
    ousModalWindow.setCookieName("userou-modal");
}

From source file:org.apache.directory.fortress.web.panel.UserListPanel.java

License:Apache License

private void addPermSearchModal(Radio permRb) {
    final ModalWindow permsModalWindow;
    userformsearchfields.add(permsModalWindow = new ModalWindow("permsearchmodal"));
    final PermSearchModalPanel permSearchModalPanel = new PermSearchModalPanel(permsModalWindow.getContentId(),
            permsModalWindow, false);//from  w  ww  . ja  v a 2 s.  co  m
    permsModalWindow.setContent(permSearchModalPanel);
    permsModalWindow.setWindowClosedCallback(new ModalWindow.WindowClosedCallback() {
        /** Default serialVersionUID */
        private static final long serialVersionUID = 1L;

        @Override
        public void onClose(AjaxRequestTarget target) {
            Permission permSelection = permSearchModalPanel.getSelection();
            if (permSelection != null) {
                searchData.setField1(permSelection.getObjName());
                searchData.setField2(permSelection.getOpName());
            }
            selectedRadioButton = PERMS;
            enablePermSearch();
            target.add(searchFields);
            target.add(radioGroup);
        }
    });
    permRb.add(new SecureIndicatingAjaxLink("permLinkLbl", GlobalIds.REVIEW_MGR, GlobalIds.FIND_PERMISSIONS) {
        /** Default serialVersionUID */
        private static final long serialVersionUID = 1L;

        public void onClick(AjaxRequestTarget target) {
            String msg = "clicked on perms search";
            msg += "permSelection: " + permission;
            String objectSearchVal = "";
            if (StringUtils.isNotEmpty(searchData.getField1())) {
                objectSearchVal = searchData.getField1();
            }
            permSearchModalPanel.setSearchVal(objectSearchVal);
            LOG.debug(msg);
            target.prependJavaScript(GlobalIds.WICKET_WINDOW_UNLOAD_CONFIRMATION_FALSE);
            permsModalWindow.show(target);
        }

        @Override
        protected void updateAjaxAttributes(AjaxRequestAttributes attributes) {
            super.updateAjaxAttributes(attributes);
            AjaxCallListener ajaxCallListener = new AjaxCallListener() {
                /** Default serialVersionUID */
                private static final long serialVersionUID = 1L;

                @Override
                public CharSequence getFailureHandler(Component component) {
                    return GlobalIds.WINDOW_LOCATION_REPLACE_COMMANDER_HOME_HTML;
                }
            };
            attributes.getAjaxCallListeners().add(ajaxCallListener);
        }
    });
    permsModalWindow.setTitle("Permission Search Modal");
    permsModalWindow.setInitialWidth(650);
    permsModalWindow.setInitialHeight(450);
    permsModalWindow.setCookieName("perm-search-modal");
}

From source file:org.apache.syncope.client.console.pages.LogViewer.java

License:Apache License

public LogViewer() {
    final WebMarkupContainer viewer = new WebMarkupContainer("viewer");
    viewer.setOutputMarkupId(true);/*  w w w  . j  a v a  2  s .  c o  m*/
    add(viewer);

    final AjaxDropDownChoicePanel<String> appenders = new AjaxDropDownChoicePanel<>("appenders", "Appender",
            new Model<String>(), false);
    MetaDataRoleAuthorizationStrategy.authorize(appenders, ENABLE, StandardEntitlement.LOG_READ);
    appenders.setChoices(restClient.listMemoryAppenders());
    viewer.add(appenders);

    final WebMarkupContainer stContainer = new WebMarkupContainer("stContainer");
    stContainer.setOutputMarkupId(true);
    viewer.add(stContainer);

    final Model<Long> lastTimeInMillis = Model.of(0L);
    final IModel<List<LogStatementTO>> statementViewModel = new ListModel<>(new ArrayList<LogStatementTO>());
    final ListView<LogStatementTO> statementView = new ListView<LogStatementTO>("statements",
            statementViewModel) {

        private static final long serialVersionUID = -9180479401817023838L;

        @Override
        protected void populateItem(final ListItem<LogStatementTO> item) {
            LogStatementPanel panel = new LogStatementPanel("statement", item.getModelObject());
            panel.setOutputMarkupId(true);
            item.add(panel);
        }
    };
    statementView.setOutputMarkupId(true);
    stContainer.add(statementView);
    stContainer.add(new AjaxSelfUpdatingTimerBehavior(Duration.seconds(10)) {

        private static final long serialVersionUID = 7298597675929755960L;

        @Override
        protected void onPostProcessTarget(final AjaxRequestTarget target) {
            // save scroll position
            target.prependJavaScript(
                    String.format("window.scrollTop = $('#%s').scrollTop();", stContainer.getMarkupId()));

            List<LogStatementTO> recentLogStatements = appenders.getModelObject() == null
                    ? new ArrayList<LogStatementTO>()
                    : restClient.getLastLogStatements(appenders.getModelObject(), lastTimeInMillis.getObject());
            if (!recentLogStatements.isEmpty()) {
                lastTimeInMillis
                        .setObject(recentLogStatements.get(recentLogStatements.size() - 1).getTimeMillis());

                int currentSize = statementView.getModelObject().size();
                int recentSize = recentLogStatements.size();

                List<LogStatementTO> newModelObject = SetUniqueList.<LogStatementTO>setUniqueList(
                        new ArrayList<LogStatementTO>(MAX_STATEMENTS_PER_APPENDER));
                if (currentSize <= MAX_STATEMENTS_PER_APPENDER - recentSize) {
                    newModelObject.addAll(statementView.getModelObject());
                } else {
                    newModelObject.addAll(statementView.getModelObject()
                            .subList(currentSize - (MAX_STATEMENTS_PER_APPENDER - recentSize), currentSize));
                }
                newModelObject.addAll(recentLogStatements);

                statementViewModel.setObject(newModelObject);
                target.add(stContainer);

            }

            // restore scroll position - might not work perfectly if items were removed from the top
            target.appendJavaScript(
                    String.format("$('#%s').scrollTop(window.scrollTop);", stContainer.getMarkupId()));
        }
    });

    appenders.getField().add(new AjaxFormComponentUpdatingBehavior(Constants.ON_CHANGE) {

        private static final long serialVersionUID = -1107858522700306810L;

        @Override
        protected void onUpdate(final AjaxRequestTarget target) {
            List<LogStatementTO> lastStatements = appenders.getModelObject() == null
                    ? new ArrayList<LogStatementTO>()
                    : restClient.getLastLogStatements(appenders.getModelObject(), 0);
            statementViewModel.setObject(lastStatements);
            target.add(stContainer);

            lastTimeInMillis.setObject(0L);
        }
    });
}