List of usage examples for org.apache.wicket.markup.html.list ListView ListView
public ListView(final String id, final List<T> list)
From source file:com.tysanclan.site.projectewok.pages.member.CommitteePage.java
License:Open Source License
/** * /*from ww w. ja v a 2 s. co m*/ */ public CommitteePage() { super("Committee Management"); Form<Committee> createForm = new Form<Committee>("committeeform") { private static final long serialVersionUID = 1L; @SpringBean private GroupService groupService; /** * @see org.apache.wicket.markup.html.form.Form#onSubmit() */ @SuppressWarnings("unchecked") @Override protected void onSubmit() { TextArea<String> descriptionArea = (TextArea<String>) get("description"); TextField<String> nameField = (TextField<String>) get("name"); DropDownChoice<User> userChoice = (DropDownChoice<User>) get("leader"); String description = descriptionArea.getModelObject(); String name = nameField.getModelObject(); User leader = userChoice.getModelObject(); if (name == null || name.isEmpty()) { error("Name may not be empty"); } else if (description == null || description.isEmpty()) { error("Description may not be empty"); } else if (leader == null) { error("You must select a chairman for this committee"); } else { Committee committee = groupService.createCommittee(name, description); groupService.setGroupLeader(leader, committee); groupService.addUserToGroup(leader, committee); logService.logUserAction(getUser(), "Groups", "Committee created: " + name); setResponsePage(new GroupPage(committee)); } } }; List<User> users = userService.getMembers(); createForm .add(new DropDownChoice<User>("leader", ModelMaker.wrap((User) null, true), ModelMaker.wrap(users)) .setNullValid(false)); createForm.add(new BBCodeTextArea("description", "")); createForm.add(new TextField<String>("name", new Model<String>(""))); add(createForm); CommitteeFilter filter = new CommitteeFilter(); filter.addOrderBy("name", true); add(new ListView<Committee>("committees", ModelMaker.wrap(committeeDAO.findByFilter(filter))) { private static final long serialVersionUID = 1L; @Override protected void populateItem(final ListItem<Committee> item) { Committee committee = item.getModelObject(); item.add(new Label("name", committee.getName())); item.add(new MemberListItem("chairman", committee.getLeader())); IconLink.Builder builder = new Builder("images/icons/delete.png", new DisbandResponder(committee)); item.add(builder.newInstance("disband")); } class DisbandResponder extends IconLink.DefaultClickResponder<Committee> { private static final long serialVersionUID = 1L; /** * */ public DisbandResponder(Committee committee) { super(ModelMaker.wrap(committee)); } /** * @see com.tysanclan.site.projectewok.components.IconLink.DefaultClickResponder#onClick() */ @Override public void onClick() { setResponsePage(new DisbandGroupPage(getModelObject())); } } }); }
From source file:com.tysanclan.site.projectewok.pages.member.CreateGroupPage.java
License:Open Source License
private void addPendingRequests() { GroupCreationRequestFilter filter = new GroupCreationRequestFilter(); filter.setRequester(getUser());// ww w .ja v a 2s .co m List<GroupCreationRequest> requests = groupCreationRequestDAO.findByFilter(filter); String intro = (requests.size() == 0) ? "You have no pending group creation requests" : "You have " + requests.size() + " pending group creation requests:"; add(new Label("pendingtext", intro)); add(new ListView<GroupCreationRequest>("requests", ModelMaker.wrap(requests)) { private static final long serialVersionUID = 1L; @Override protected void populateItem(ListItem<GroupCreationRequest> item) { GroupCreationRequest request = item.getModelObject(); item.add(new Label("name", request.getName())); item.add(new Label("type", request.getGame() == null ? "Social Group" : "Gaming Group")); item.add(new Label("description", request.getDescription()).setEscapeModelStrings(false)); item.add(new Label("motivation", request.getMotivation()).setEscapeModelStrings(false)); } }.setVisible(requests.size() > 0)); }
From source file:com.tysanclan.site.projectewok.pages.member.DeadRealmRemovalPage.java
License:Open Source License
private void init(List<GameRealmCartesian> cartesians) { add(new ListView<GameRealmCartesian>("deadrealms", cartesians) { private static final long serialVersionUID = 1L; /**//ww w .j a va 2 s . c o m * @see org.apache.wicket.markup.html.list.ListView#populateItem(org.apache.wicket.markup.html.list.ListItem) */ @Override protected void populateItem(ListItem<GameRealmCartesian> item) { GameRealmCartesian cartesian = item.getModelObject(); Game game = cartesian.getGame(); Realm realm = cartesian.getRealm(); item.add(new Label("game", game.getName())); item.add(new Label("realm", realm.getName())); item.add(new Label("listed", Model.of(gameService.countPlayers(game, realm)))); item.add(new IconLink.Builder("images/icons/cross.png", new DefaultClickResponder<GameRealmCartesian>( new Model<GameRealmCartesian>(cartesian)) { private static final long serialVersionUID = 1L; @Override public void onClick() { GameRealmCartesian cart = getModelObject(); Game g = cart.getGame(); Realm r = cart.getRealm(); User user = getUser(); gameService.removeFromRealm(user, r, g); setResponsePage(new OverviewPage()); } }).newInstance("delete")); } }); }
From source file:com.tysanclan.site.projectewok.pages.member.EditAccountsPage.java
License:Open Source License
/** * //www .j a v a 2s . c o m */ public EditAccountsPage() { super("Edit Accounts"); Form<User> form = new Form<User>("gameform") { private static final long serialVersionUID = 1L; @SpringBean private GameService gameService; /** * @see org.apache.wicket.markup.html.form.Form#onSubmit() */ @SuppressWarnings("unchecked") @Override protected void onSubmit() { DropDownChoice<GameRealmCartesian> cartesianChoice = (DropDownChoice<GameRealmCartesian>) get( "choices"); GameRealmCartesian cartesian = cartesianChoice.getModelObject(); gameService.addPlayedGame(getUser(), cartesian.getGame(), cartesian.getRealm()); setResponsePage(new EditAccountsPage()); } }; add(form); List<GameRealmCartesian> cartesians = new LinkedList<GameRealmCartesian>(); for (Game game : gameDAO.findAll()) { for (Realm realm : game.getRealms()) { cartesians.add(new GameRealmCartesian(game, realm)); } } for (UserGameRealm ugr : getUser().getPlayedGames()) { cartesians.remove(new GameRealmCartesian(ugr.getGame(), ugr.getRealm())); } form.add(new DropDownChoice<GameRealmCartesian>("choices", new Model<GameRealmCartesian>(null), cartesians, new GameRealmCartesianRenderer())); add(form); List<UserGameRealm> played = new LinkedList<UserGameRealm>(); played.addAll(getUser().getPlayedGames()); Collections.sort(played, new Comparator<UserGameRealm>() { /** * @see java.util.Comparator#compare(java.lang.Object, * java.lang.Object) */ @Override public int compare(UserGameRealm o1, UserGameRealm o2) { return o1.getGame().getName().compareToIgnoreCase(o2.getGame().getName()); } }); add(new ListView<UserGameRealm>("played", ModelMaker.wrap(played)) { private static final long serialVersionUID = 1L; /** * @see org.apache.wicket.markup.html.list.ListView#populateItem(org.apache.wicket.markup.html.list.ListItem) */ @Override protected void populateItem(ListItem<UserGameRealm> item) { UserGameRealm ugr = item.getModelObject(); item.add(new AccountPanel("accountpanel", ugr)); } }); }
From source file:com.tysanclan.site.projectewok.pages.member.EditForumModeratorPage.java
License:Open Source License
/** * /*from ww w . ja v a 2 s . c o m*/ */ public EditForumModeratorPage(Forum forum) { super("Moderator Management"); forumModel = ModelMaker.wrap(forum); add(new Label("stitle", "Moderators for forum " + forum.getName())); List<User> moderators = new LinkedList<User>(); moderators.addAll(forum.getModerators()); Collections.sort(moderators, new CaseInsensitiveUserComparator()); add(new ListView<User>("moderators", ModelMaker.wrap(moderators)) { private static final long serialVersionUID = 1L; @Override protected void populateItem(ListItem<User> item) { User user = item.getModelObject(); item.add(new Label("user", user.getUsername())); Link<User> deleteLink = new Link<User>("remove", ModelMaker.wrap(user)) { private static final long serialVersionUID = 1L; @SpringBean private ForumService forumService; /** * @see org.apache.wicket.markup.html.link.Link#onClick() */ @Override public void onClick() { User moderator = getModelObject(); forumService.removeModerator(getUser(), getForum(), moderator); setResponsePage(new EditForumModeratorPage(getForum())); } }; deleteLink.add(new ContextImage("icon", "images/icons/group_delete.png")); item.add(deleteLink); } }); Form<Forum> addModeratorForm = new Form<Forum>("addForm", ModelMaker.wrap(forum)) { private static final long serialVersionUID = 1L; @SpringBean private ForumService forumService; /** * @see org.apache.wicket.markup.html.form.Form#onSubmit() */ @SuppressWarnings("unchecked") @Override protected void onSubmit() { DropDownChoice<User> userChoice = (DropDownChoice<User>) get("userSelect"); User moderator = userChoice.getModelObject(); forumService.addModerator(getUser(), getModelObject(), moderator); setResponsePage(new EditForumModeratorPage(getModelObject())); } }; UserFilter filter = new UserFilter(); filter.addRank(Rank.CHANCELLOR); filter.addRank(Rank.SENATOR); filter.addRank(Rank.TRUTHSAYER); filter.addRank(Rank.REVERED_MEMBER); filter.addRank(Rank.SENIOR_MEMBER); filter.addRank(Rank.FULL_MEMBER); filter.addRank(Rank.JUNIOR_MEMBER); filter.addOrderBy("username", true); List<User> users = userDAO.findByFilter(filter); addModeratorForm.add( new DropDownChoice<User>("userSelect", ModelMaker.wrap(users.get(0), true), ModelMaker.wrap(users)) .setNullValid(false)); add(addModeratorForm); add(new Link<Void>("back") { private static final long serialVersionUID = 1L; @Override public void onClick() { setResponsePage(new ForumManagementPage()); } }); }
From source file:com.tysanclan.site.projectewok.pages.member.EndorsementPage.java
License:Open Source License
/** * //from ww w. j a va 2 s . c om */ public EndorsementPage() { super("Endorsements"); Set<User> endorsements = getUser().getEndorsedBy(); Set<User> endorsements2 = getUser().getEndorsedForSenateBy(); add(new WebMarkupContainer("nousers").setVisible(endorsements.isEmpty())); add(new WebMarkupContainer("nousers3").setVisible(endorsements2.isEmpty())); List<User> endorsers = new ArrayList<User>(); endorsers.addAll(endorsements); List<User> endorsers2 = new ArrayList<User>(); endorsers2.addAll(endorsements2); Collections.sort(endorsers, new Comparator<User>() { @Override public int compare(User u1, User u2) { return u1.getUsername().compareTo(u2.getUsername()); } }); Collections.sort(endorsers2, new Comparator<User>() { @Override public int compare(User u1, User u2) { return u1.getUsername().compareTo(u2.getUsername()); } }); add(new ListView<User>("users", ModelMaker.wrap(endorsers)) { /** * */ private static final long serialVersionUID = 1L; @Override protected void populateItem(ListItem<User> item) { item.add(new MemberListItem("user", item.getModelObject())); } }.setVisible(!endorsements.isEmpty())); add(new ListView<User>("users2", ModelMaker.wrap(endorsers2)) { /** * */ private static final long serialVersionUID = 1L; @Override protected void populateItem(ListItem<User> item) { item.add(new MemberListItem("user", item.getModelObject())); } }.setVisible(!endorsements2.isEmpty())); User endorses = getUser().getEndorses(); String endorsesName = endorses == null ? "Nobody" : endorses.getUsername(); add(new WebMarkupContainer("nousers2").setVisible(endorses == null)); WebMarkupContainer container = new WebMarkupContainer("endorsed"); container.add(new Label("user", endorsesName)); container.setVisible(endorses != null); add(container); Form<User> endorsementForm = new Form<User>("endorseform") { private static final long serialVersionUID = 1L; @SpringBean private DemocracyService democracyService; /** * @see org.apache.wicket.markup.html.form.Form#onSubmit() */ @SuppressWarnings("unchecked") @Override protected void onSubmit() { DropDownChoice<User> userSelect = (DropDownChoice<User>) get("targetUser"); User target = userSelect.getModelObject(); User endorser = getUser(); if (democracyService.isElectionCandidate(getUser().getEndorses())) { error("You are currently endorsing a running candidate," + " you must wait until after elections before you can change your endorsement"); } else { democracyService.endorseUserForChancellor(endorser, target); setResponsePage(new EndorsementPage()); } } }; UserFilter filter = new UserFilter(); filter.addRank(Rank.CHANCELLOR); filter.addRank(Rank.SENATOR); filter.addRank(Rank.TRUTHSAYER); filter.addRank(Rank.REVERED_MEMBER); filter.addRank(Rank.SENIOR_MEMBER); filter.addRank(Rank.FULL_MEMBER); filter.setRetired(false); filter.addOrderBy("username", true); List<User> eligible = userDAO.findByFilter(filter); eligible.remove(getUser()); endorsementForm .add(new DropDownChoice<User>("targetUser", ModelMaker.wrap(endorses), ModelMaker.wrap(eligible)) .setNullValid(true)); add(endorsementForm); Form<User> endorsementForm2 = new Form<User>("endorseform2") { private static final long serialVersionUID = 1L; @SpringBean private DemocracyService democracyService; /** * @see org.apache.wicket.markup.html.form.Form#onSubmit() */ @SuppressWarnings("unchecked") @Override protected void onSubmit() { DropDownChoice<User> userSelect = (DropDownChoice<User>) get("targetUser"); User target = userSelect.getModelObject(); User endorser = getUser(); if (democracyService.isElectionCandidate(getUser().getEndorsesForSenate())) { error("You are currently endorsing a running candidate," + " you must wait until after elections before you can change your endorsement"); } else { democracyService.endorseUserForSenate(endorser, target); setResponsePage(new EndorsementPage()); } } }; UserFilter filter2 = new UserFilter(); filter2.addRank(Rank.CHANCELLOR); filter2.addRank(Rank.SENATOR); filter2.addRank(Rank.TRUTHSAYER); filter2.addRank(Rank.REVERED_MEMBER); filter2.addRank(Rank.SENIOR_MEMBER); filter2.addRank(Rank.FULL_MEMBER); filter2.setRetired(false); List<User> eligible2 = userDAO.findByFilter(filter2); eligible2.remove(getUser()); User endorsesForSenate = getUser().getEndorsesForSenate(); String endorsesForSenateName = endorsesForSenate == null ? "Nobody" : endorsesForSenate.getUsername(); endorsementForm2.add(new DropDownChoice<User>("targetUser", ModelMaker.wrap(endorsesForSenate), ModelMaker.wrap(eligible)).setNullValid(true)); add(endorsementForm2); add(new WebMarkupContainer("nousers4").setVisible(endorsesForSenate == null)); WebMarkupContainer container2 = new WebMarkupContainer("endorsed2"); container2.add(new Label("user", endorsesForSenateName)); container2.setVisible(endorsesForSenate != null); add(container2); }
From source file:com.tysanclan.site.projectewok.pages.member.FinancePage.java
License:Open Source License
/** * //www . j a va2 s .c o m */ public FinancePage() { super("Clan Finances"); // Charts: // - cash flow // - annual expense breakdown // - cash reserves // - reserve expiration date // - donations // - contribution // - subscriptions List<Expense> expenses = expenseDAO.findAll(); List<Expense> filtered = new LinkedList<Expense>(); BigDecimal sum = new BigDecimal(0).setScale(2); DateTime now = new DateTime(); DateTime oneMonthAgo = now.minusMonths(1); DateTime oneYearAgo = now.minusYears(1); DateTime year1997 = new DateTime(1997, 1, 1, 12, 0, 0, 0); for (Expense expense : expenses) { if (expense.getEnd() == null || expense.getEnd().after(now.toDate())) { switch (expense.getPeriod()) { case MONTHLY: sum = sum.add(expense.getAmount().multiply(factor12)); break; case QUARTERLY: sum = sum.add(expense.getAmount().multiply(factor4)); break; case SEMIANNUALLY: sum = sum.add(expense.getAmount().multiply(factor2)); break; case ANNUALLY: sum = sum.add(expense.getAmount()); break; case BIANNUALLY: sum = sum.add(expense.getAmount().divide(factor2, RoundingMode.HALF_UP)); break; } filtered.add(expense); } } add(new ListView<Expense>("expenses", ModelMaker.wrap(filtered)) { private static final long serialVersionUID = 1L; /** * @see org.apache.wicket.markup.html.list.ListView#populateItem(org.apache.wicket.markup.html.list.ListItem) */ @Override protected void populateItem(ListItem<Expense> item) { Expense expense = item.getModelObject(); item.add(new Label("name", expense.getName())); String regularity = null; IModel<String> yearlyExpense = null; boolean amountPerTermVisible = true; switch (expense.getPeriod()) { case MONTHLY: regularity = "Monthly"; yearlyExpense = new DollarSignModel( new Model<BigDecimal>(expense.getAmount().multiply(factor12))); break; case QUARTERLY: regularity = "Quarterly"; yearlyExpense = new DollarSignModel( new Model<BigDecimal>(expense.getAmount().multiply(factor4))); break; case SEMIANNUALLY: regularity = "Semiannually"; yearlyExpense = new DollarSignModel( new Model<BigDecimal>(expense.getAmount().multiply(factor2))); break; case BIANNUALLY: regularity = "Biannually"; yearlyExpense = new DollarSignModel( new Model<BigDecimal>(expense.getAmount().divide(factor2, RoundingMode.HALF_UP))); break; default: amountPerTermVisible = false; regularity = "Annually"; yearlyExpense = new DollarSignModel(new Model<BigDecimal>(expense.getAmount())); } item.add(new Label("regularity", regularity)); item.add(new Label("amounteach", new DollarSignModel(new Model<BigDecimal>(expense.getAmount()))) .setVisible(amountPerTermVisible)); item.add(new Label("annualfee", yearlyExpense)); } }); add(new Label("annualcost", new DollarSignModel(new Model<BigDecimal>(sum)))); FinancialTimeline timeline = new FinancialTimeline(expenseDAO, donationDAO, subscriptionDAO, paidExpenseDAO); // Finance overview charts addLineChart("monthlychart", "Cash flow last month", 2, timeline.getCashFlow(oneMonthAgo, now)); addLineChart("yearlychart", "Cash flow last year", 2, timeline.getCashFlow(oneYearAgo, now)); addLineChart("alltimechart", "Cash flow all time", 2, timeline.getCashFlow(year1997, now)); add(GraphUtil.makePieChart("monthlyparticipation", "Participation last month", timeline.getParticipation(oneMonthAgo, now))); add(GraphUtil.makePieChart("annualparticipation", "Participation last year", timeline.getParticipation(oneYearAgo, now))); add(GraphUtil.makePieChart("alltimeparticipation", "All time participation", timeline.getParticipation(year1997, now))); add(GraphUtil.makeReservesBarChart("reserves", "Cash reserves by donator", timeline.getReservesAt(now))); add(new BookmarkablePageLink<CharterPage>("charter", CharterPage.class)); add(new WebMarkupContainer("un") .add(AttributeModifier.replace("value", "Tysan Donation by " + getUser().getUsername()))); User treasurer = roleService.getTreasurer(); add(new HiddenField<String>("paypalAddress", new Model<String>(treasurer != null ? treasurer.getPaypalAddress() : "disable")) .add(AttributeModifier.replace("name", "business"))); add(new ActivateSubscriptionPanel("activatesubscription", getUser(), new FinancePageLink())); add(new ViewSubscriptionPanel("viewsubscription", getUser(), new FinancePageLink())); }
From source file:com.tysanclan.site.projectewok.pages.member.ForumManagementPage.java
License:Open Source License
/** *///from w w w . j a va2s. c om private ListView<ForumCategory> createCategoryListView() { return new ListView<ForumCategory>("categories", ModelMaker.wrap(forumCategoryDAO.findAll())) { private static final long serialVersionUID = 1L; @Override protected void populateItem(ListItem<ForumCategory> item) { final int catindex = item.getIndex(); ForumCategory category = item.getModelObject(); item.add(new Label("name", category.getName())); Link<ForumCategory> createForumLink = new Link<ForumCategory>("add", ModelMaker.wrap(category)) { /** * */ private static final long serialVersionUID = 1L; @Override public void onClick() { setResponsePage(new CreateForumPage(getModelObject())); } }; createForumLink.add(new ContextImage("icon", "images/icons/book_add.png")); item.add(createForumLink); Link<ForumCategory> deleteLink = new Link<ForumCategory>("delete", ModelMaker.wrap(category)) { private static final long serialVersionUID = 1L; @SpringBean private ForumService forumService; @Override public void onClick() { forumService.deleteCategory(getUser(), getModelObject()); setResponsePage(new ForumManagementPage()); } }; deleteLink.setVisible(category.getForums().isEmpty()); deleteLink.add(new ContextImage("icon", "images/icons/cross.png")); deleteLink.add(new Label("name2", category.getName())); item.add(deleteLink); item.add(new Label("allowpublic", category.isAllowPublicGroupForums() ? "This category may contain public group forums" : "This category may not contains public group forums")); final int total = category.getForums().size(); item.add(new ListView<Forum>("forums", ModelMaker.wrap(category.getForums())) { private static final long serialVersionUID = 1L; @Override protected void populateItem(ListItem<Forum> innerItem) { Forum forum = innerItem.getModelObject(); innerItem.add(new Label("name", forum.getName())); Link<Forum> moveUpLink = new Link<Forum>("moveup", ModelMaker.wrap(forum)) { private static final long serialVersionUID = 1L; @SpringBean private ForumService forumService; @Override public void onClick() { forumService.moveUp(getModelObject()); setResponsePage(new ForumManagementPage()); } }; moveUpLink.setVisible(innerItem.getIndex() != 0); moveUpLink.add(new ContextImage("icon", "images/icons/arrow_up.png")); innerItem.add(moveUpLink); Link<Forum> moveDownLink = new Link<Forum>("movedown", ModelMaker.wrap(forum)) { private static final long serialVersionUID = 1L; @SpringBean private ForumService forumService; @Override public void onClick() { forumService.moveDown(getModelObject()); setResponsePage(new ForumManagementPage()); } }; moveDownLink.setVisible(innerItem.getIndex() != (total - 1)); moveDownLink.add(new ContextImage("icon", "images/icons/arrow_down.png")); innerItem.add(moveDownLink); Link<Forum> catPrevLink = new Link<Forum>("catprev", ModelMaker.wrap(forum)) { private static final long serialVersionUID = 1L; @SpringBean private ForumService forumService; @Override public void onClick() { Forum _forum = getModelObject(); List<ForumCategory> cats = forumCategoryDAO.findAll(); ForumCategory current = _forum.getCategory(); int index = cats.indexOf(current); if (index != -1) { int target = index - 1; ForumCategory targetCat = cats.get(target); forumService.moveToCategory(getUser(), _forum, targetCat); setResponsePage(new ForumManagementPage()); } } }; catPrevLink.setVisible(catindex != 0 && !(forum instanceof GroupForum)); catPrevLink.add(new ContextImage("icon", "images/icons/book_previous.png")); innerItem.add(catPrevLink); Link<Forum> catNextLink = new Link<Forum>("catnext", ModelMaker.wrap(forum)) { private static final long serialVersionUID = 1L; @SpringBean private ForumService forumService; @Override public void onClick() { Forum _forum = getModelObject(); List<ForumCategory> cats = forumCategoryDAO.findAll(); ForumCategory current = _forum.getCategory(); int index = cats.indexOf(current); if (index != -1) { int target = index + 1; ForumCategory targetCat = cats.get(target); forumService.moveToCategory(getUser(), _forum, targetCat); setResponsePage(new ForumManagementPage()); } } }; catNextLink.setVisible( catindex != (forumCategoryDAO.countAll() - 1) && !(forum instanceof GroupForum)); catNextLink.add(new ContextImage("icon", "images/icons/book_next.png")); innerItem.add(catNextLink); Link<Forum> editLink = new Link<Forum>("edit", ModelMaker.wrap(forum)) { private static final long serialVersionUID = 1L; @Override public void onClick() { setResponsePage(new EditForumPage(getModelObject())); } }; editLink.add(new ContextImage("icon", "images/icons/book_edit.png")); editLink.setVisible(!(forum instanceof GroupForum)); innerItem.add(editLink); Link<Forum> moderatorLink = new Link<Forum>("moderators", ModelMaker.wrap(forum)) { private static final long serialVersionUID = 1L; @Override public void onClick() { setResponsePage(new EditForumModeratorPage(getModelObject())); } }; moderatorLink.setVisible(!(forum instanceof GroupForum)); moderatorLink.add(new ContextImage("icon", "images/icons/group_edit.png")); innerItem.add(moderatorLink); Link<Forum> _deleteLink = new Link<Forum>("delete", ModelMaker.wrap(forum)) { private static final long serialVersionUID = 1L; @SpringBean private ForumService forumService; @Override public void onClick() { forumService.deleteForum(getUser(), getModelObject()); setResponsePage(new ForumManagementPage()); } }; _deleteLink.setVisible(forum.getThreads().isEmpty() && !(forum instanceof NewsForum) && !(forum instanceof GroupForum)); _deleteLink.add(new ContextImage("icon", "images/icons/delete.png")); innerItem.add(_deleteLink); } }); } }; }
From source file:com.tysanclan.site.projectewok.pages.member.GameManagementPage.java
License:Open Source License
public GameManagementPage() { super("Game Management"); add(new ListView<Game>("games", ModelMaker.wrap(gameDAO.findAll())) { private static final long serialVersionUID = 1L; @Override/*ww w . j ava 2 s. c om*/ protected void populateItem(ListItem<Game> item) { Game game = item.getModelObject(); item.add(new Label("name", game.getName())); item.add(new Image("icon", new ByteArrayResource(ImageUtil.getMimeType(game.getImage()), game.getImage()))); if (game.getCoordinator() != null) { item.add(new MemberListItem("coordinator", game.getCoordinator())); IconLink.Builder builder = new IconLink.Builder("images/icons/user_edit.png", new DefaultClickResponder<Game>(ModelMaker.wrap(game)) { private static final long serialVersionUID = 1L; @Override public void onClick() { setResponsePage(new EditGameSupervisorPage(getModelObject())); } }); item.add(builder.newInstance("edit")); } else { item.add(new WebMarkupContainer("edit").setVisible(false)); IconLink.Builder builder = new IconLink.Builder("images/icons/user_add.png", new DefaultClickResponder<Game>(ModelMaker.wrap(game)) { private static final long serialVersionUID = 1L; @Override public void onClick() { setResponsePage(new EditGameSupervisorPage(getModelObject())); } }); item.add(builder.newInstance("coordinator")); } item.add(new Label("realmcount", new Model<Integer>(game.getRealms().size()))); item.add(new Label("playercount", new Model<Integer>(gameService.countActivePlayers(game)))); item.add(new Label("groupcount", new Model<Integer>(game.getGroups().size()))); IconLink.Builder builder = new IconLink.Builder("images/icons/cross.png", new DefaultClickResponder<Game>(ModelMaker.wrap(game)) { private static final long serialVersionUID = 1L; /** * @see com.tysanclan.site.projectewok.components.IconLink.DefaultClickResponder#onClick() */ @Override public void onClick() { Game g = getModelObject(); if (gameService.isGameInactive(g)) { gameService.deleteGame(getUser(), g); } setResponsePage(new RealmManagementPage()); } }); builder.setImageVisible(gameService.isGameInactive(game)); item.add(builder.newInstance("remove")); } }); }
From source file:com.tysanclan.site.projectewok.pages.member.GamingGroupSupervisionPage.java
License:Open Source License
private void initComponents(String name, List<GamingGroup> groups) { List<User> users = new LinkedList<User>(); for (GamingGroup group : groups) { users.addAll(group.getGroupMembers()); }//w w w . ja v a 2s . c om add(GraphUtil.makePieChart("rankcomposition", "Overall rank composition", createCompositionChart(users)) .setVisible(!users.isEmpty())); add(GraphUtil.makeBarChart("groupsize", "Group sizes", createGroupSizeChart(groups)) .setVisible(!users.isEmpty())); add(new ListView<GamingGroup>("groups", ModelMaker.wrap(groups)) { private static final long serialVersionUID = 1L; /** * @see org.apache.wicket.markup.html.list.ListView#populateItem(org.apache.wicket.markup.html.list.ListItem) */ @Override protected void populateItem(ListItem<GamingGroup> item) { GamingGroup group = item.getModelObject(); List<User> userList = new LinkedList<User>(); userList.addAll(group.getGroupMembers()); item.add(new Label("name", group.getName())); item.add(GraphUtil.makePieChart("rankcomposition", group.getName() + " rank composition", createCompositionChart(userList))); } }); }