List of usage examples for org.apache.wicket.extensions.breadcrumb.panel BreadCrumbPanelLink BreadCrumbPanelLink
public BreadCrumbPanelLink(final String id, final IBreadCrumbModel breadCrumbModel, final IBreadCrumbPanelFactory breadCrumbPanelFactory)
From source file:gr.abiss.calipso.wicket.OptionsPanel.java
License:Open Source License
public OptionsPanel(String id, final IBreadCrumbModel breadCrumbModel) { super(id, breadCrumbModel); // setVersioned(false); final User user = getPrincipal(); //User Profile add(new BreadCrumbLink("profile", breadCrumbModel) { protected IBreadCrumbParticipant getParticipant(String componentId) { return new UserFormPanel(componentId, breadCrumbModel, getCalipso().loadUser(user.getId())); }//from www . j av a 2s . c o m }); final boolean isAdmin = user.isGlobalAdmin(); final boolean isSpaceAdmin = user.isSpaceAdmin(); add(new BreadCrumbPanelLink("users", this, UserListPanel.class).setVisible(isAdmin || isSpaceAdmin)); add(new BreadCrumbPanelLink("spaces", this, SpaceListPanel.class).setVisible(isAdmin || isSpaceAdmin)); add(new BreadCrumbPanelLink("settings", this, ConfigListPanel.class).setVisible(isAdmin)); add(new BreadCrumbPanelLink("indexes", this, IndexRebuildPanel.class).setVisible(isAdmin)); add(new BreadCrumbPanelLink("organizations", this, OrganizationPanel.class).setVisible(isAdmin)); add(new Link("import") { public void onClick() { } }.setVisible(false)); //Assets BreadCrumbLink breadCrumbLink = new BreadCrumbLink("assets", breadCrumbModel) { protected IBreadCrumbParticipant getParticipant(String componentId) { return new AssetsPanel(componentId, breadCrumbModel); } }; breadCrumbLink.setVisible(isAdmin || isSpaceAdmin); add(breadCrumbLink); BreadCrumbLink validationLink = new BreadCrumbLink("validations", breadCrumbModel) { protected IBreadCrumbParticipant getParticipant(String componentId) { return new ValidationExpressionPanel(componentId, breadCrumbModel); } }; validationLink.setVisible(isAdmin || isSpaceAdmin); add(validationLink); }
From source file:gr.abiss.calipso.wicket.SpaceListPanel.java
License:Open Source License
public SpaceListPanel(String id, final IBreadCrumbModel breadCrumbModel) { super(id, breadCrumbModel); //BreadCrumbPanelLink createSpacePanelLink = new BreadCrumbPanelLink("create", this, SpaceFormPanel.class); user = getPrincipal();//w w w . ja v a 2 s. c o m userIsSpaceAdmin = user.isSpaceAdmin(); add(new BreadCrumbLink("create", getBreadCrumbModel()) { @Override protected IBreadCrumbParticipant getParticipant(String componentId) { return new SpacePanelLanguageSupport(componentId, getBreadCrumbModel()); } }); //add(createSpacePanelLink.setVisible(user.isAdminForAllSpaces())); LoadableDetachableModel spaceListModel = new LoadableDetachableModel() { protected Object load() { logger.debug("Loading space list from database..."); if (userIsSpaceAdmin && !user.isGlobalAdmin()) { return user.getSpacesWhereUserIsAdmin(); } return getCalipso().findAllSpaces(); } }; final SimpleAttributeModifier sam = new SimpleAttributeModifier("class", "alt"); ListView listView = new ListView("spaces", spaceListModel) { protected void populateItem(ListItem listItem) { final Space space = (Space) listItem.getModelObject(); if (selectedSpaceId == space.getId()) { listItem.add(new SimpleAttributeModifier("class", "selected")); } else if (listItem.getIndex() % 2 == 1) { listItem.add(sam); } listItem.add(new Label("prefixCode", new PropertyModel(space, "prefixCode"))); listItem.add(new Label("name", localize(space))); //Edit ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ listItem.add(new BreadCrumbLink("edit", getBreadCrumbModel()) { private static final long serialVersionUID = 1L; protected IBreadCrumbParticipant getParticipant(String componentId) { Space temp = getCalipso().loadSpace(space.getId()); //temp.getMetadata().getXmlString(); // hack to override lazy loading return new SpacePanelLanguageSupport(componentId, getBreadCrumbModel(), temp); } }); //Description ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ listItem.add(new Label("description", new PropertyModel(space, "description"))); // space group name listItem.add(new Label("spaceGroupName", new PropertyModel(space, "spaceGroup.name"))); //Allocate ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ listItem.add(new BreadCrumbLink("allocate", getBreadCrumbModel()) { private static final long serialVersionUID = 1L; protected IBreadCrumbParticipant getParticipant(String componentId) { return new SpaceAllocatePanel(componentId, getBreadCrumbModel(), space.getId()); } }); //published ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ listItem.add(new Label("published", new PropertyModel(space, "published"))); //Asset ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ if (space.isAssetEnabled() && (user.isGlobalAdmin() || user.isSpaceAdmin(space))) { listItem.add(new BreadCrumbLink("asset", breadCrumbModel) { private static final long serialVersionUID = 1L; protected IBreadCrumbParticipant getParticipant(String componentId) { Asset asset = new Asset(); asset.setSpace(space); return new AssetSpacePanel("panel", getBreadCrumbModel(), new AssetSearch(asset, this), space.getId()); } }); } else { listItem.add(new BlankPanel("asset").setVisible(true)); } } }; @SuppressWarnings("unchecked") boolean spacesExist = !((List<Space>) spaceListModel.getObject()).isEmpty(); add(new WebMarkupContainer("listHead").setVisible(spacesExist)); add(listView); WebMarkupContainer noData = new WebMarkupContainer("noData"); noData.add(new BreadCrumbPanelLink("create", this, SpaceFormPanel.class).setVisible(user.isGlobalAdmin())); noData.setVisible(!spacesExist); add(noData); }