package org.atricore.idbus.capabilities.sso.ui.page.selfsvcs.sidebar; import org.apache.wicket.markup.html.basic.Label; import org.apache.wicket.markup.html.link.ExternalLink; import org.apache.wicket.markup.html.list.ListItem; import org.apache.wicket.markup.html.list.ListView; import org.apache.wicket.markup.html.panel.Panel; import org.apache.wicket.model.Model; import org.atricore.idbus.capabilities.sso.ui.model.PartnerAppModel; import org.atricore.idbus.kernel.main.provisioning.domain.User; import java.util.List; /** * @author: sgonzalez@atriocore.com * @date: 3/11/13 */ public class SideBarPanel extends Panel { protected User user ; protected List<PartnerAppModel> apps; public SideBarPanel(String id, User u, List<PartnerAppModel> partnerApps) { super(id); this.user = u; this.apps = partnerApps; } @Override protected void onInitialize() { super.onInitialize(); // Populate user and apps information ! String fullName = user.getFirstName() + " " + user.getSurename(); add(new Label("fullName", fullName)); add(new Label("email", user.getEmail())); // Build apps table ListView<PartnerAppModel> appsList = new ListView<PartnerAppModel>("apps", apps) { @Override public void populateItem(final ListItem<PartnerAppModel> listItem) { final PartnerAppModel app = listItem.getModelObject(); String appName = app.getDescription() != null ? app.getDescription() : app.getName(); listItem.add(new ExternalLink("ssoLink", app.getSsoEndpoint()).add(new Label("name", new Model<String>(appName)))); //listItem.add(new MultiLineLabel("text", comment.getText())); } }; add(appsList); } public List<PartnerAppModel> getApps() { return apps; } public void setApps(List<PartnerAppModel> apps) { this.apps = apps; } public User getUser() { return user; } public void setUser(User user) { this.user = user; } }