Search in sources :

Example 11 with Panel

use of org.apache.wicket.markup.html.panel.Panel in project syncope by apache.

the class Policies method buildTabList.

private List<ITab> buildTabList() {
    final List<ITab> tabs = new ArrayList<>();
    tabs.add(new AbstractTab(new ResourceModel("policy.account")) {

        private static final long serialVersionUID = -6815067322125799251L;

        @Override
        public Panel getPanel(final String panelId) {
            return new AccountPolicyDirectoryPanel(panelId, getPageReference());
        }
    });
    tabs.add(new AbstractTab(new ResourceModel("policy.password")) {

        private static final long serialVersionUID = -6815067322125799251L;

        @Override
        public Panel getPanel(final String panelId) {
            return new PasswordPolicyDirectoryPanel(panelId, getPageReference());
        }
    });
    tabs.add(new AbstractTab(new ResourceModel("policy.pull")) {

        private static final long serialVersionUID = -6815067322125799251L;

        @Override
        public Panel getPanel(final String panelId) {
            return new PullPolicyDirectoryPanel(panelId, getPageReference());
        }
    });
    return tabs;
}
Also used : AccountPolicyDirectoryPanel(org.apache.syncope.client.console.policies.AccountPolicyDirectoryPanel) PasswordPolicyDirectoryPanel(org.apache.syncope.client.console.policies.PasswordPolicyDirectoryPanel) AjaxBootstrapTabbedPanel(de.agilecoders.wicket.core.markup.html.bootstrap.tabs.AjaxBootstrapTabbedPanel) Panel(org.apache.wicket.markup.html.panel.Panel) PullPolicyDirectoryPanel(org.apache.syncope.client.console.policies.PullPolicyDirectoryPanel) AccountPolicyDirectoryPanel(org.apache.syncope.client.console.policies.AccountPolicyDirectoryPanel) ArrayList(java.util.ArrayList) PasswordPolicyDirectoryPanel(org.apache.syncope.client.console.policies.PasswordPolicyDirectoryPanel) AbstractTab(org.apache.wicket.extensions.markup.html.tabs.AbstractTab) ResourceModel(org.apache.wicket.model.ResourceModel) ITab(org.apache.wicket.extensions.markup.html.tabs.ITab) PullPolicyDirectoryPanel(org.apache.syncope.client.console.policies.PullPolicyDirectoryPanel)

Example 12 with Panel

use of org.apache.wicket.markup.html.panel.Panel in project syncope by apache.

the class Security method buildTabList.

private List<ITab> buildTabList() {
    final List<ITab> tabs = new ArrayList<>();
    tabs.add(new AbstractTab(new ResourceModel("roles")) {

        private static final long serialVersionUID = -6815067322125799251L;

        @Override
        public Panel getPanel(final String panelId) {
            return new RoleDirectoryPanel.Builder(getPageReference()) {

                private static final long serialVersionUID = -5960765294082359003L;
            }.addNewItemPanelBuilder(new RoleWizardBuilder(new RoleTO(), getPageReference()), true).build(panelId);
        }
    });
    tabs.add(new AbstractTab(new ResourceModel("dynRealms")) {

        private static final long serialVersionUID = -6815067322125799251L;

        @Override
        public Panel getPanel(final String panelId) {
            return new DynRealmDirectoryPanel.Builder(getPageReference()) {

                private static final long serialVersionUID = -5960765294082359003L;
            }.build(panelId);
        }
    });
    tabs.add(new AbstractTab(new ResourceModel("applications")) {

        private static final long serialVersionUID = -6815067322125799251L;

        @Override
        public Panel getPanel(final String panelId) {
            return new ApplicationDirectoryPanel.Builder(getPageReference()) {

                private static final long serialVersionUID = -5960765294082359003L;
            }.build(panelId);
        }
    });
    tabs.add(new AbstractTab(new ResourceModel("securityQuestions")) {

        private static final long serialVersionUID = -6815067322125799251L;

        @Override
        public Panel getPanel(final String panelId) {
            return new SecurityQuestionsPanel(panelId, getPageReference());
        }
    });
    return tabs;
}
Also used : RoleWizardBuilder(org.apache.syncope.client.console.wizards.role.RoleWizardBuilder) SecurityQuestionsPanel(org.apache.syncope.client.console.panels.SecurityQuestionsPanel) RoleWizardBuilder(org.apache.syncope.client.console.wizards.role.RoleWizardBuilder) BookmarkablePageLinkBuilder(org.apache.syncope.client.console.BookmarkablePageLinkBuilder) ArrayList(java.util.ArrayList) RoleTO(org.apache.syncope.common.lib.to.RoleTO) ITab(org.apache.wicket.extensions.markup.html.tabs.ITab) SecurityQuestionsPanel(org.apache.syncope.client.console.panels.SecurityQuestionsPanel) DynRealmDirectoryPanel(org.apache.syncope.client.console.panels.DynRealmDirectoryPanel) AjaxBootstrapTabbedPanel(de.agilecoders.wicket.core.markup.html.bootstrap.tabs.AjaxBootstrapTabbedPanel) Panel(org.apache.wicket.markup.html.panel.Panel) RoleDirectoryPanel(org.apache.syncope.client.console.panels.RoleDirectoryPanel) ApplicationDirectoryPanel(org.apache.syncope.client.console.panels.ApplicationDirectoryPanel) RoleDirectoryPanel(org.apache.syncope.client.console.panels.RoleDirectoryPanel) AbstractTab(org.apache.wicket.extensions.markup.html.tabs.AbstractTab) ResourceModel(org.apache.wicket.model.ResourceModel)

Example 13 with Panel

use of org.apache.wicket.markup.html.panel.Panel in project syncope by apache.

the class EventCategoryPanel method onEvent.

@Override
public void onEvent(final IEvent<?> event) {
    if (event.getPayload() instanceof ChangeCategoryEvent) {
        // update objects ....
        eventCategoryTO.getEvents().clear();
        final ChangeCategoryEvent change = (ChangeCategoryEvent) event.getPayload();
        final Panel changedPanel = change.getChangedPanel();
        if (null != changedPanel.getId()) {
            switch(changedPanel.getId()) {
                case "type":
                    eventCategoryTO.setType(type.getModelObject());
                    eventCategoryTO.setCategory(null);
                    eventCategoryTO.setSubcategory(null);
                    if (type.getModelObject() == EventCategoryType.CUSTOM) {
                        category.setChoices(Collections.<String>emptyList());
                        subcategory.setChoices(Collections.<String>emptyList());
                        category.setEnabled(false);
                        subcategory.setEnabled(false);
                        custom.setVisible(true);
                        custom.setEnabled(true);
                        actionsPanel.setVisible(true);
                        actionsPanel.setEnabled(true);
                    } else {
                        category.setChoices(filter(eventCategoryTOs, type.getModelObject()));
                        subcategory.setChoices(Collections.<String>emptyList());
                        category.setEnabled(true);
                        subcategory.setEnabled(true);
                        custom.setVisible(false);
                        custom.setEnabled(false);
                        actionsPanel.setVisible(false);
                        actionsPanel.setEnabled(false);
                    }
                    change.getTarget().add(categoryContainer);
                    break;
                case "category":
                    subcategory.setChoices(filter(eventCategoryTOs, type.getModelObject(), category.getModelObject()));
                    eventCategoryTO.setCategory(category.getModelObject());
                    eventCategoryTO.setSubcategory(null);
                    change.getTarget().add(categoryContainer);
                    break;
                default:
                    eventCategoryTO.setSubcategory(subcategory.getModelObject());
                    break;
            }
        }
        updateEventsContainer(change.getTarget());
    } else if (event.getPayload() instanceof InspectSelectedEvent) {
        // update objects ....
        eventCategoryTO.getEvents().clear();
        final InspectSelectedEvent inspectSelectedEvent = (InspectSelectedEvent) event.getPayload();
        final Map.Entry<EventCategoryTO, AuditElements.Result> categoryEvent = AuditLoggerName.parseEventCategory(inspectSelectedEvent.getEvent());
        eventCategoryTO.setType(categoryEvent.getKey().getType());
        category.setChoices(filter(eventCategoryTOs, type.getModelObject()));
        eventCategoryTO.setCategory(categoryEvent.getKey().getCategory());
        subcategory.setChoices(filter(eventCategoryTOs, type.getModelObject(), category.getModelObject()));
        eventCategoryTO.setSubcategory(categoryEvent.getKey().getSubcategory());
        if (categoryEvent.getKey().getType() == EventCategoryType.CUSTOM) {
            custom.setModelObject(AuditLoggerName.buildEvent(categoryEvent.getKey().getType(), categoryEvent.getKey().getCategory(), categoryEvent.getKey().getSubcategory(), categoryEvent.getKey().getEvents().isEmpty() ? StringUtils.EMPTY : categoryEvent.getKey().getEvents().iterator().next(), categoryEvent.getValue()));
            category.setEnabled(false);
            subcategory.setEnabled(false);
            custom.setVisible(true);
            custom.setEnabled(true);
            actionsPanel.setVisible(true);
            actionsPanel.setEnabled(true);
        } else {
            category.setEnabled(true);
            subcategory.setEnabled(true);
            custom.setVisible(false);
            custom.setEnabled(false);
            actionsPanel.setVisible(false);
            actionsPanel.setEnabled(false);
        }
        inspectSelectedEvent.getTarget().add(categoryContainer);
        updateEventsContainer(inspectSelectedEvent.getTarget());
    }
}
Also used : AjaxDropDownChoicePanel(org.apache.syncope.client.console.wicket.markup.html.form.AjaxDropDownChoicePanel) AjaxTextFieldPanel(org.apache.syncope.client.console.wicket.markup.html.form.AjaxTextFieldPanel) ActionsPanel(org.apache.syncope.client.console.wicket.markup.html.form.ActionsPanel) Panel(org.apache.wicket.markup.html.panel.Panel) InspectSelectedEvent(org.apache.syncope.client.console.events.SelectedEventsPanel.InspectSelectedEvent) AuditElements(org.apache.syncope.common.lib.types.AuditElements)

Example 14 with Panel

use of org.apache.wicket.markup.html.panel.Panel in project syncope by apache.

the class Reports method buildTabList.

private List<ITab> buildTabList() {
    final List<ITab> tabs = new ArrayList<>();
    tabs.add(new AbstractTab(new ResourceModel("reports")) {

        private static final long serialVersionUID = -6815067322125799251L;

        @Override
        public Panel getPanel(final String panelId) {
            final MultilevelPanel mlp = new MultilevelPanel(panelId);
            mlp.setFirstLevel(new ReportDirectoryPanel(mlp, getPageReference()) {

                private static final long serialVersionUID = -2195387360323687302L;

                @Override
                protected void viewTask(final ReportTO reportTO, final AjaxRequestTarget target) {
                    mlp.next(new StringResourceModel("report.view", this, new Model<>(reportTO)).getObject(), new ReportExecutionDetails(reportTO, getPageReference()), target);
                }
            });
            return mlp;
        }
    });
    tabs.add(new AbstractTab(new ResourceModel("report.templates")) {

        private static final long serialVersionUID = -6815067322125799251L;

        @Override
        public Panel getPanel(final String panelId) {
            return new ReportTemplateDirectoryPanel(panelId, getPageReference());
        }
    });
    return tabs;
}
Also used : ReportDirectoryPanel(org.apache.syncope.client.console.reports.ReportDirectoryPanel) ArrayList(java.util.ArrayList) ReportTO(org.apache.syncope.common.lib.to.ReportTO) ReportExecutionDetails(org.apache.syncope.client.console.reports.ReportExecutionDetails) ITab(org.apache.wicket.extensions.markup.html.tabs.ITab) AjaxRequestTarget(org.apache.wicket.ajax.AjaxRequestTarget) ReportDirectoryPanel(org.apache.syncope.client.console.reports.ReportDirectoryPanel) AjaxBootstrapTabbedPanel(de.agilecoders.wicket.core.markup.html.bootstrap.tabs.AjaxBootstrapTabbedPanel) Panel(org.apache.wicket.markup.html.panel.Panel) MultilevelPanel(org.apache.syncope.client.console.panels.MultilevelPanel) ReportTemplateDirectoryPanel(org.apache.syncope.client.console.reports.ReportTemplateDirectoryPanel) MultilevelPanel(org.apache.syncope.client.console.panels.MultilevelPanel) AbstractTab(org.apache.wicket.extensions.markup.html.tabs.AbstractTab) StringResourceModel(org.apache.wicket.model.StringResourceModel) ResourceModel(org.apache.wicket.model.ResourceModel) ReportTemplateDirectoryPanel(org.apache.syncope.client.console.reports.ReportTemplateDirectoryPanel) StringResourceModel(org.apache.wicket.model.StringResourceModel)

Example 15 with Panel

use of org.apache.wicket.markup.html.panel.Panel in project syncope by apache.

the class Types method buildTabList.

private List<ITab> buildTabList() {
    final List<ITab> tabs = new ArrayList<>();
    tabs.add(new AbstractTab(new Model<>("RelationshipTypes")) {

        private static final long serialVersionUID = -6815067322125799251L;

        @Override
        public Panel getPanel(final String panelId) {
            return new RelationshipTypesPanel(panelId, getPageReference());
        }
    });
    tabs.add(new AbstractTab(new Model<>("AnyTypes")) {

        private static final long serialVersionUID = -6815067322125799251L;

        @Override
        public Panel getPanel(final String panelId) {
            return new AnyTypesPanel(panelId, getPageReference());
        }
    });
    tabs.add(new AbstractTab(new Model<>("AnyTypeClasses")) {

        private static final long serialVersionUID = -6815067322125799251L;

        @Override
        public Panel getPanel(final String panelId) {
            return new AnyTypeClassesPanel(panelId, getPageReference());
        }
    });
    tabs.add(new AbstractTab(new Model<>("Schemas")) {

        private static final long serialVersionUID = -6815067322125799251L;

        @Override
        public Panel getPanel(final String panelId) {
            return new SchemasPanel(panelId, getPageReference());
        }
    });
    return tabs;
}
Also used : AnyTypeClassesPanel(org.apache.syncope.client.console.panels.AnyTypeClassesPanel) ArrayList(java.util.ArrayList) ITab(org.apache.wicket.extensions.markup.html.tabs.ITab) SchemasPanel(org.apache.syncope.client.console.panels.SchemasPanel) AjaxBootstrapTabbedPanel(de.agilecoders.wicket.core.markup.html.bootstrap.tabs.AjaxBootstrapTabbedPanel) Panel(org.apache.wicket.markup.html.panel.Panel) AnyTypeClassesPanel(org.apache.syncope.client.console.panels.AnyTypeClassesPanel) RelationshipTypesPanel(org.apache.syncope.client.console.panels.RelationshipTypesPanel) AnyTypesPanel(org.apache.syncope.client.console.panels.AnyTypesPanel) RelationshipTypesPanel(org.apache.syncope.client.console.panels.RelationshipTypesPanel) Model(org.apache.wicket.model.Model) AnyTypesPanel(org.apache.syncope.client.console.panels.AnyTypesPanel) AbstractTab(org.apache.wicket.extensions.markup.html.tabs.AbstractTab) SchemasPanel(org.apache.syncope.client.console.panels.SchemasPanel)

Aggregations

Panel (org.apache.wicket.markup.html.panel.Panel)76 WebMarkupContainer (org.apache.wicket.markup.html.WebMarkupContainer)27 ArrayList (java.util.ArrayList)21 SchemaException (com.evolveum.midpoint.util.exception.SchemaException)18 BasePanel (com.evolveum.midpoint.gui.api.component.BasePanel)16 ITab (org.apache.wicket.extensions.markup.html.tabs.ITab)16 Before (org.junit.Before)16 AbstractTab (org.apache.wicket.extensions.markup.html.tabs.AbstractTab)15 AjaxRequestTarget (org.apache.wicket.ajax.AjaxRequestTarget)13 AjaxBootstrapTabbedPanel (de.agilecoders.wicket.core.markup.html.bootstrap.tabs.AjaxBootstrapTabbedPanel)12 ResourceModel (org.apache.wicket.model.ResourceModel)11 DivTestPanel (org.odlabs.wiquery.ui.DivTestPanel)11 ItemPanelSettingsBuilder (com.evolveum.midpoint.gui.impl.prism.panel.ItemPanelSettingsBuilder)10 VisibleEnableBehaviour (com.evolveum.midpoint.web.component.util.VisibleEnableBehaviour)10 List (java.util.List)9 Test (org.junit.Test)9 IModel (org.apache.wicket.model.IModel)8 Model (org.apache.wicket.model.Model)6 ActionsPanel (org.apache.syncope.client.console.wicket.markup.html.form.ActionsPanel)5 Label (org.apache.wicket.markup.html.basic.Label)5