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.NotificationsPage.java
License:Open Source License
public NotificationsPage() { super("Notifications"); add(new OtterSniperPanel("otterSniperPanel", 0)); add(new ListView<Notification>("notifications", ModelMaker.wrap(notificationService.getNotificationsForUser(getUser()))) { private static final long serialVersionUID = 1L; @Override//from w w w . j a v a 2s . c o m protected void populateItem(ListItem<Notification> item) { Notification notification = item.getModelObject(); item.add(new DateLabel("time", notification.getDate())); item.add(new Label("notification", notification.getMessage())); item.add(new IconLink.Builder("images/icons/cross.png", new DefaultClickResponder<Notification>(ModelMaker.wrap(notification)) { private static final long serialVersionUID = 1L; /** * @see com.tysanclan.site.projectewok.components.IconLink.DefaultClickResponder#onClick() */ @Override public void onClick() { notificationService.dismissNotification(getModelObject()); setResponsePage(new NotificationsPage()); } }).newInstance("dismiss")); } }); }
From source file:com.tysanclan.site.projectewok.pages.member.OverviewPage.java
License:Open Source License
/** * //from ww w. j a va 2 s .c o m */ public OverviewPage() { super("Member overview"); add(new MentorPanel("pupils", getUser())); add(new PupilPanel("mentor", getUser())); add(new BasicMemberPanel("basicpanel", getUser())); add(new TruthsayerPanel("truthsayerpanel").setVisible(getUser().getRank().equals(Rank.TRUTHSAYER))); add(new SenatorPanel("senatorpanel").setVisible(getUser().getRank().equals(Rank.SENATOR))); add(new ChancellorPanel("chancellorpanel").setVisible(getUser().getRank().equals(Rank.CHANCELLOR))); add(new TreasurerPanel("treasurerpanel", getUser())); add(new StewardPanel("stewardpanel", getUser())); add(new HeraldPanel("heraldpanel", getUser())); User user = getUser(); List<Group> groups = new LinkedList<Group>(); groups.addAll(user.getGroups()); add(new ListView<Group>("groups", ModelMaker.wrap(groups)) { private static final long serialVersionUID = 1L; @Override protected void populateItem(ListItem<Group> item) { Group group = item.getModelObject(); item.add(new GroupOverviewPanel("grouppanel", getUser(), group)); } }); GameFilter gfilter = new GameFilter(); gfilter.setCoordinator(user); add(new DataView<Game>("games", FilterDataProvider.of(gfilter, gameDAO)) { private static final long serialVersionUID = 1L; @Override protected void populateItem(Item<Game> item) { Game game = item.getModelObject(); item.add(new GameSupervisorPanel("supervisorpanel", game)); } }); RealmFilter rfilter = new RealmFilter(); rfilter.setOverseer(user); add(new DataView<Realm>("realms", FilterDataProvider.of(rfilter, realmDAO)) { private static final long serialVersionUID = 1L; @Override protected void populateItem(Item<Realm> item) { Realm realm = item.getModelObject(); item.add(new RealmSupervisorPanel("supervisorpanel", realm)); } }); }
From source file:com.tysanclan.site.projectewok.pages.member.PastElectionsPage.java
License:Open Source License
/** * //ww w.j a va2 s . c o m */ public PastElectionsPage() { super("Past Elections"); add(new OtterSniperPanel("otterSniperPanel", 3)); Calendar calendar = DateUtil.getCalendarInstance(); calendar.add(Calendar.WEEK_OF_YEAR, -2); calendar.add(Calendar.DAY_OF_YEAR, -1); ElectionFilter filter = new ElectionFilter(); filter.setStartBefore(calendar.getTime()); filter.addOrderBy("start", false); List<Election> elections = new LinkedList<Election>(); for (Election e : electionDAO.findByFilter(filter)) { if (Hibernate.getClass(e) != GroupLeaderElection.class) { elections.add(e); } } add(new ListView<Election>("elections", ModelMaker.wrap(elections)) { private static final long serialVersionUID = 1L; @Override protected void populateItem(ListItem<Election> item) { Election election = item.getModelObject(); final Map<Long, Integer> totals = new HashMap<Long, Integer>(); DateFormat format = new SimpleDateFormat("EEEE d MMMM yyyy", Locale.US); List<User> candidates = new LinkedList<User>(); candidates.addAll(election.getCandidates()); Collections.sort(candidates, new Comparator<User>() { /** * @see java.util.Comparator#compare(java.lang.Object, * java.lang.Object) */ @Override public int compare(User o1, User o2) { return o1.getUsername().compareToIgnoreCase(o2.getUsername()); } }); Calendar cal = DateUtil.getCalendarInstance(); cal.setTime(election.getStart()); cal.add(Calendar.WEEK_OF_YEAR, 2); cal.add(Calendar.DAY_OF_MONTH, 1); String type = "Unknown"; String winnersLabel = "Winner:"; Class<?> electionClass = Hibernate.getClass(election); List<User> winners = new LinkedList<User>(); if (electionClass == ChancellorElection.class) { ChancellorElection ce = chancellorElectionDAO.load(election.getId()); type = "Chancellor"; if (ce.getWinner() != null) { winners.add(ce.getWinner()); } } else if (electionClass == SenateElection.class) { type = "Senate"; winnersLabel = "Winners:"; SenateElection se = senateElectionDAO.load(election.getId()); winners.addAll(se.getWinners()); } List<CompoundVote> votes = new LinkedList<CompoundVote>(); for (CompoundVote v : election.getVotes()) { for (CompoundVoteChoice cvc : v.getChoices()) { Long userid = cvc.getVotesFor().getId(); int score = cvc.getScore(); if (totals.containsKey(userid)) { totals.put(userid, totals.get(userid) + score); } else { totals.put(userid, score); } } votes.add(v); } Collections.sort(votes, new Comparator<CompoundVote>() { @Override public int compare(CompoundVote o1, CompoundVote o2) { return o1.getCaster().getUsername().compareToIgnoreCase(o2.getCaster().getUsername()); } }); item.add(new Label("title", type + " election of " + format.format(cal.getTime()))); item.add(new Label("winnerslabel", winnersLabel)); item.add(new ListView<User>("winners", ModelMaker.wrap(winners)) { 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<User> innerItem) { innerItem.add(new MemberListItem("winner", innerItem.getModelObject())); } }); item.add(new WebMarkupContainer("candidatesheader").add( AttributeModifier.replace("colspan", Integer.toString(election.getCandidates().size())))); item.add(new ListView<CompoundVote>("votes", ModelMaker.wrap(votes)) { private static final long serialVersionUID = 1L; @Override protected void populateItem(ListItem<CompoundVote> innerItem) { CompoundVote vote = innerItem.getModelObject(); if (vote.getCaster().equals(getUser())) { innerItem.add(new Label("userdescriptor", getUser().getUsername())); } else { innerItem.add(new Label("userdescriptor", getScrambledUsername(vote)) .setEscapeModelStrings(false)); } List<CompoundVoteChoice> scores = new LinkedList<CompoundVoteChoice>(); scores.addAll(vote.getChoices()); Collections.sort(scores, new Comparator<CompoundVoteChoice>() { /** * @see java.util.Comparator#compare(java.lang.Object, * java.lang.Object) */ @Override public int compare(CompoundVoteChoice o1, CompoundVoteChoice o2) { return o1.getVotesFor().getUsername() .compareToIgnoreCase(o2.getVotesFor().getUsername()); } }); innerItem.add(new ListView<CompoundVoteChoice>("scores", ModelMaker.wrap(scores)) { private static final long serialVersionUID = 1L; @Override protected void populateItem(ListItem<CompoundVoteChoice> innerInnerItem) { CompoundVoteChoice choice = innerInnerItem.getModelObject(); innerInnerItem.add(new Label("score", new Model<Integer>(choice.getScore()))); } }); } }); item.add(new ListView<User>("candidates", ModelMaker.wrap(candidates)) { 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<User> innerItem) { innerItem.add(new MemberListItem("candidate", innerItem.getModelObject())); } }); item.add(new ListView<User>("totals", ModelMaker.wrap(candidates)) { 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<User> innerItem) { User user = innerItem.getModelObject(); innerItem.add(new Label("total", new Model<Integer>(totals.get(user.getId())))); } }); } }); }
From source file:com.tysanclan.site.projectewok.pages.member.ProposeAchievementPage.java
License:Open Source License
public ProposeAchievementPage(int tabIndex) { super("Propose Achievement"); this.tabIndex = tabIndex; add(new ListView<AchievementProposal>("proposals", ModelMaker.wrap(achievementProposalDAO.findAll())) { private static final long serialVersionUID = 1L; @Override/* w w w.j ava 2 s .c o m*/ protected void populateItem(final ListItem<AchievementProposal> item) { AchievementProposal proposal = item.getModelObject(); item.add(new Image("icon", new StoredImageResource(proposal.getIcon().getImage()))); item.add(new Label("name", proposal.getName())); item.add(new Label("description", proposal.getDescription()).setEscapeModelStrings(false)); item.add(new Label("game", proposal.getGame() != null ? proposal.getGame().getName() : "-")); item.add(new Label("group", proposal.getGroup() != null ? proposal.getGroup().getName() : "-")); } }); List<AchievementIcon> icons = achievementService.getAvailableIcons(getUser()); add(getIconListview("icons", icons, new IconClickResponder() { private static final long serialVersionUID = 1L; @Override public void onClick(AchievementIcon icon) { setResponsePage(new ProposeAchievementPage2(icon)); } })); add(new WebMarkupContainer("noIcons").setVisible(icons.isEmpty())); add(getIconListview("approved", getApprovedIcons(getUser()), null)); add(getIconListview("pending", getPendingIcons(getUser()), null)); add(getIconListview("rejected", getRejectedIcons(getUser()), new IconClickResponder() { private static final long serialVersionUID = 1L; @Override public void onClick(AchievementIcon icon) { achievementService.deleteIcon(getUser(), icon); setResponsePage(new ProposeAchievementPage(2)); } })); final FileUploadField uploadField = new FileUploadField("file", new ListModel<FileUpload>()); uploadField.setRequired(true); final TextField<String> purposeField = new TextField<String>("purpose", new Model<String>("")); purposeField.setRequired(true); final CheckBox privateIconBox = new CheckBox("private", new Model<Boolean>(true)); Form<AchievementIcon> uploadForm = new Form<AchievementIcon>("uploadIcon") { private static final long serialVersionUID = 1L; @Override protected void onSubmit() { List<FileUpload> uploads = uploadField.getModelObject(); String purpose = purposeField.getModelObject(); Boolean privateIcon = privateIconBox.getModelObject(); if (uploads != null && !uploads.isEmpty()) { FileUpload upload = uploads.get(0); AchievementIcon icon = achievementService.uploadAchievementIcon(getUser(), upload.getBytes(), purpose, privateIcon); if (icon != null) { setResponsePage(new ProposeAchievementPage(2)); } else { error("Invalid image type, or not a 48x48 pixel image"); } } else { error("No valid file uploaded"); } } }; uploadForm.setMultiPart(true); uploadForm.add(uploadField); uploadForm.add(purposeField); uploadForm.add(privateIconBox); add(uploadForm); }
From source file:com.tysanclan.site.projectewok.pages.member.ProposeAchievementPage.java
License:Open Source License
private ListView<List<Long>> getIconListview(String id, List<AchievementIcon> icons, final IconClickResponder responder) { List<List<Long>> pagedList = new ArrayList<List<Long>>(1 + icons.size() / 5); for (int i = 0; i < icons.size(); i += 5) { int remaining = icons.size() - i; int limit = icons.size(); if (remaining > 5) { limit = i + 5;// ww w .j a va 2s . co m } List<Long> next = new ArrayList<Long>(limit - i); for (int j = i; j < limit; j++) { next.add(icons.get(j).getId()); } pagedList.add(next); } return new ListView<List<Long>>(id, pagedList) { private static final long serialVersionUID = 1L; @SpringBean private AchievementIconDAO iconDAO; @Override protected void populateItem(final ListItem<List<Long>> item) { item.add(new ListView<Long>("sublist", item.getModelObject()) { private static final long serialVersionUID = 1L; @Override protected void populateItem(final ListItem<Long> innerItem) { AchievementIcon icon = iconDAO.load(innerItem.getModelObject()); Link<AchievementIcon> iconLink = new Link<AchievementIcon>("iconLink", ModelMaker.wrap(icon)) { private static final long serialVersionUID = 1L; @Override public void onClick() { if (responder != null) { responder.onClick(getModelObject()); } } }; iconLink.setEnabled(responder != null); iconLink.setRenderBodyOnly(responder == null); iconLink.add(new Image("icon", new StoredImageResource(icon.getImage()))); innerItem.add(iconLink); } }); } }; }
From source file:com.tysanclan.site.projectewok.pages.member.RealmManagementPage.java
License:Open Source License
public RealmManagementPage() { super("Realm Management"); add(new ListView<Realm>("realms", ModelMaker.wrap(realmDAO.findAll())) { private static final long serialVersionUID = 1L; @Override// ww w. java 2 s .c o m protected void populateItem(ListItem<Realm> item) { Realm realm = item.getModelObject(); item.add(new Label("name", realm.getName())); if (realm.getOverseer() != null) { item.add(new MemberListItem("coordinator", realm.getOverseer())); IconLink.Builder builder = new IconLink.Builder("images/icons/user_edit.png", new DefaultClickResponder<Realm>(ModelMaker.wrap(realm)) { private static final long serialVersionUID = 1L; @Override public void onClick() { setResponsePage(new EditRealmSupervisorPage(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<Realm>(ModelMaker.wrap(realm)) { private static final long serialVersionUID = 1L; @Override public void onClick() { setResponsePage(new EditRealmSupervisorPage(getModelObject())); } }); item.add(builder.newInstance("coordinator")); } item.add(new Label("gamescount", new Model<Integer>(realm.getGames().size()))); item.add(new Label("playercount", new Model<Integer>(realmService.countActivePlayers(realm)))); item.add(new Label("groupcount", new Model<Integer>(realm.getGroups().size()))); IconLink.Builder builder = new IconLink.Builder("images/icons/cross.png", new DefaultClickResponder<Realm>(ModelMaker.wrap(realm)) { private static final long serialVersionUID = 1L; /** * @see com.tysanclan.site.projectewok.components.IconLink.DefaultClickResponder#onClick() */ @Override public void onClick() { Realm rlm = getModelObject(); if (realmService.isRealmInactive(rlm)) { realmService.deleteRealm(rlm, getUser()); } setResponsePage(new RealmManagementPage()); } }); builder.setImageVisible(realmService.isRealmInactive(realm)); item.add(builder.newInstance("remove")); } }); }
From source file:com.tysanclan.site.projectewok.pages.member.RequestAchievementPage.java
License:Open Source License
public RequestAchievementPage() { super("Request Achievement"); User user = getUser();//from w w w. j a v a 2s. com Set<Game> games = new HashSet<Game>(); List<Achievement> available = achievementDAO.findAll(); available.removeAll(user.getAchievements()); for (UserGameRealm ugr : user.getPlayedGames()) { games.add(ugr.getGame()); } Set<Achievement> remove = new HashSet<Achievement>(); for (AchievementRequest r : user.getAchievementRequests()) { remove.add(r.getAchievement()); } for (Achievement a : available) { if (a.getGame() != null) { if (!games.contains(a.getGame())) { remove.add(a); } } if (a.getGroup() != null) { if (!user.getGroups().contains(a.getGroup())) { remove.add(a); } } } available.removeAll(remove); Collections.sort(available, AchievementComparator.INSTANCE); add(new ListView<Achievement>("achievements", ModelMaker.wrap(available)) { private static final long serialVersionUID = 1L; @Override protected void populateItem(final ListItem<Achievement> item) { Achievement achievement = item.getModelObject(); item.add(new Image("icon", new StoredImageResource(achievement.getIcon().getImage()))); if (achievement.getGame() != null) { item.add(new Image("game", new StoredImageResource(achievement.getGame().getImage()))); } else { item.add(new WebMarkupContainer("game").setVisible(false)); } if (achievement.getGroup() != null) { item.add(new Label("group", achievement.getGroup().getName())); } else { item.add(new Label("group", "-")); } item.add(new Label("name", achievement.getName())); item.add(new Label("description", achievement.getDescription()).setEscapeModelStrings(false)); item.add(new IconLink.Builder("images/icons/accept.png", new DefaultClickResponder<Achievement>(ModelMaker.wrap(achievement)) { private static final long serialVersionUID = 1L; @Override public void onClick() { setResponsePage(new RequestAchievementPage2(getModelObject())); } }).newInstance("request")); } }); }
From source file:com.tysanclan.site.projectewok.pages.member.RolesManagementPage.java
License:Open Source License
/** * /*from w w w. j a va 2 s .c o m*/ */ public RolesManagementPage() { super("Roles management"); RoleFilter filter = new RoleFilter(); filter.addOrderBy("roleType", true); filter.addOrderBy("name", true); List<Role> roles = roleDAO.findByFilter(filter); add(new ListView<Role>("roles", ModelMaker.wrap(roles)) { private static final long serialVersionUID = 1L; @SpringBean private UserDAO userDAO; @Override protected void populateItem(ListItem<Role> item) { Role role = item.getModelObject(); item.add(new Label("name", role.getName())); if (role.getAssignedTo() != null) { item.add(new MemberListItem("member", role.getAssignedTo())); } else { item.add(new Label("member", "-")); } Dialog reassignDialog = new Dialog("assigndialog"); Form<Role> reassignForm = new Form<Role>("assign", ModelMaker.wrap(role)) { private static final long serialVersionUID = 1L; @SpringBean private RoleService roleService; /** * @see org.apache.wicket.markup.html.form.Form#onSubmit() */ @SuppressWarnings("unchecked") @Override protected void onSubmit() { DropDownChoice<User> userChoice = (DropDownChoice<User>) get("user"); User user = userChoice.getModelObject(); if (user != null) { roleService.assignTo(getUser().getId(), getModelObject().getId(), user.getId()); setResponsePage(new RolesManagementPage()); } } }; reassignDialog.setAutoOpen(false); reassignDialog.setTitle("Assign role " + role.getName()); UserFilter f = new UserFilter(); f.addRank(Rank.CHANCELLOR); f.addRank(Rank.SENATOR); f.addRank(Rank.TRUTHSAYER); f.addRank(Rank.REVERED_MEMBER); f.addRank(Rank.SENIOR_MEMBER); f.addRank(Rank.FULL_MEMBER); List<User> users = userDAO.findByFilter(f); reassignForm.add(new DropDownChoice<User>("user", ModelMaker.wrap(users.get(0), true), ModelMaker.wrap(users)).setNullValid(false)); reassignDialog.add(reassignForm); item.add(reassignDialog); AjaxLink<Dialog> reassignLink = new AjaxLink<Dialog>("reassign", new Model<Dialog>(reassignDialog)) { private static final long serialVersionUID = 1L; /** * @see org.apache.wicket.ajax.markup.html.AjaxLink#onClick(org.apache.wicket.ajax.AjaxRequestTarget) */ @Override public void onClick(AjaxRequestTarget target) { Dialog dlg = getModelObject(); if (target != null) { dlg.open(target); } } }; reassignLink.add(new ContextImage("icon", "images/icons/vcard.png")); reassignLink.setVisible(role.isReassignable()); Link<Role> editLink = new Link<Role>("edit", ModelMaker.wrap(role)) { private static final long serialVersionUID = 1L; @Override public void onClick() { setResponsePage(new EditRolePage(getModelObject())); } }; editLink.add(new ContextImage("icon", "images/icons/vcard_edit.png")); editLink.setVisible(role.isReassignable()); Dialog deletedialog = new Dialog("deletedialog"); deletedialog.setTitle("Delete role " + role.getName()); deletedialog.setAutoOpen(false); deletedialog.add(new Label("name", role.getName())); Link<Role> yesDeleteLink = new Link<Role>("yes", ModelMaker.wrap(role)) { private static final long serialVersionUID = 1L; @SpringBean private RoleService roleService; @Override public void onClick() { roleService.deleteRole(getUser(), getModelObject()); setResponsePage(new RolesManagementPage()); } }; yesDeleteLink.add(new ContextImage("icon", "images/icons/tick.png")); deletedialog.add(yesDeleteLink); AjaxLink<Dialog> noDeleteLink = new AjaxLink<Dialog>("no", new Model<Dialog>(deletedialog)) { private static final long serialVersionUID = 1L; @Override public void onClick(AjaxRequestTarget target) { Dialog dlg = getModelObject(); if (target != null) { dlg.close(target); } } }; noDeleteLink.add(new ContextImage("icon", "images/icons/cross.png")); deletedialog.add(noDeleteLink); item.add(deletedialog); AjaxLink<Dialog> deleteLink = new AjaxLink<Dialog>("delete", new Model<Dialog>(deletedialog)) { private static final long serialVersionUID = 1L; /** * @see org.apache.wicket.ajax.markup.html.AjaxLink#onClick(org.apache.wicket.ajax.AjaxRequestTarget) */ @Override public void onClick(AjaxRequestTarget target) { Dialog dlg = getModelObject(); if (target != null) { dlg.open(target); } } }; deleteLink.add(new ContextImage("icon", "images/icons/vcard_delete.png")); deleteLink.setVisible(role.isReassignable()); item.add(new WebMarkupContainer("nonreassignable").setVisible(!role.isReassignable())); item.add(new WebMarkupContainer("noneditable").setVisible(!role.isReassignable())); item.add(new WebMarkupContainer("nondeletable").setVisible(!role.isReassignable())); item.add(reassignLink); item.add(deleteLink); item.add(editLink); } }); Form<Role> addRoleForm = new Form<Role>("addRoleForm") { private static final long serialVersionUID = 1L; @SpringBean private RoleService roleService; /** * @see org.apache.wicket.markup.html.form.Form#onSubmit() */ @SuppressWarnings("unchecked") @Override protected void onSubmit() { TextField<String> nameField = (TextField<String>) get("name"); TextArea<String> descriptionArea = (TextArea<String>) get("description"); String name = nameField.getModelObject(); String description = descriptionArea.getModelObject(); roleService.createRole(getUser(), name, description, RoleType.NORMAL); setResponsePage(new RolesManagementPage()); } }; addRoleForm.add(new TextField<String>("name", new Model<String>(""))); addRoleForm.add(new BBCodeTextArea("description", "")); add(addRoleForm); }
From source file:com.tysanclan.site.projectewok.pages.member.RunForChancellorPage.java
License:Open Source License
/** * //from w w w . j a va 2 s . co m */ public RunForChancellorPage() { super("Run for Chancellor"); int gained = getUser().getEndorsedBy().size(); long requiredEndorsements = democracyService.getRequiredChancellorEndorsements(); add(new Label("required", new Model<Long>(requiredEndorsements))); add(new Label("gained", new Model<Integer>(gained))); List<User> endorsers = new LinkedList<User>(); Set<User> endorsements = getUser().getEndorsedBy(); endorsers.addAll(endorsements); Collections.sort(endorsers, new User.CaseInsensitiveUserComparator()); add(new ListView<User>("endorsers", ModelMaker.wrap(endorsers)) { private static final long serialVersionUID = 1L; @Override protected void populateItem(ListItem<User> item) { item.add(new MemberListItem("user", item.getModelObject())); } }); BigDecimal value = getDonatedAmount(); add(new Label("donated", NumberFormat.getCurrencyInstance(Locale.US).format(value.doubleValue()))); add(new Form<User>("runForChancellorForm", ModelMaker.wrap(getUser())) { private static final long serialVersionUID = 1L; /** * @see org.apache.wicket.markup.html.form.Form#onSubmit() */ @Override protected void onSubmit() { User user = getModelObject(); if (MemberUtil.isEligibleForElectedRank(user, Rank.CHANCELLOR)) { if (democracyService.addChancellorCandidate(user)) { setResponsePage( new ChancellorElectionPage(democracyService.getCurrentChancellorElection())); } else { error("Failed to finalize candidacy"); } } } }.setVisible(democracyService.isEligibleChancellorCandidate(getUser()))); }
From source file:com.tysanclan.site.projectewok.pages.member.RunForSenatorPage.java
License:Open Source License
/** * // w w w. j a v a2s. c o m */ public RunForSenatorPage() { super("Run for Senator"); int gained = getUser().getEndorsedForSenateBy().size(); long requiredEndorsements = democracyService.getRequiredSenateEndorsements(); add(new Label("required", new Model<Long>(requiredEndorsements))); add(new Label("gained", new Model<Integer>(gained))); BigDecimal value = getDonatedAmount(); add(new Label("donated", NumberFormat.getCurrencyInstance(Locale.US).format(value.doubleValue()))); List<User> endorsers = new LinkedList<User>(); Set<User> endorsements = getUser().getEndorsedForSenateBy(); endorsers.addAll(endorsements); Collections.sort(endorsers, new User.CaseInsensitiveUserComparator()); add(new ListView<User>("endorsers", ModelMaker.wrap(endorsers)) { private static final long serialVersionUID = 1L; @Override protected void populateItem(ListItem<User> item) { item.add(new MemberListItem("user", item.getModelObject())); } }); add(new Form<User>("runForSenatorForm", ModelMaker.wrap(getUser())) { private static final long serialVersionUID = 1L; /** * @see org.apache.wicket.markup.html.form.Form#onSubmit() */ @Override protected void onSubmit() { User user = getModelObject(); if (MemberUtil.isEligibleForElectedRank(user, Rank.SENATOR)) { if (democracyService.addSenateCandidate(user)) { setResponsePage(new SenateElectionPage(democracyService.getCurrentSenateElection())); } else { error("Failed to finalize candidacy"); } } } }.setVisible(democracyService.isEligibleSenateCandidate(getUser()))); }