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.senate.RegulationModificationPage.java
License:Open Source License
/** * //from w ww . java2s .c o m */ public RegulationModificationPage() { super("Regulations"); add(new ListView<RegulationChange>("votes", ModelMaker.wrap(regulationChangeDAO.findAll())) { private static final long serialVersionUID = 1L; @Override protected void populateItem(ListItem<RegulationChange> item) { RegulationChange change = item.getModelObject(); String name = change.getChangeType() == ChangeType.ADD ? change.getTitle() : change.getRegulation().getName(); item.add(new Label("title", "" + change.getChangeType().toString() + " regulation " + name)); if (change.getChangeType() == ChangeType.MODIFY) { item.add(new Label("name", change.getTitle())); } else { item.add(new WebMarkupContainer("name").setVisible(false)); } if (change.getChangeType() != ChangeType.ADD) { item.add(new Label("current", change.getRegulation().getContents()) .setEscapeModelStrings(false)); } else { item.add(new WebMarkupContainer("current").setVisible(false)); } if (change.getChangeType() == ChangeType.REPEAL) { item.add(new WebMarkupContainer("body").setVisible(false)); } else { item.add(new Label("body", change.getDescription()).setEscapeModelStrings(false)); } RegulationChangeVote myVote = null; for (RegulationChangeVote vote : change.getVotes()) { if (vote.getSenator().equals(getUser())) { myVote = vote; break; } } if (myVote == null) { item.add(new Label("whatisay", "You have not yet voted on this change!")); } else { if (myVote.isInFavor()) { item.add(new Label("whatisay", "You have voted in favor of this change")); } else { item.add(new Label("whatisay", "You have voted against this change")); } } item.add(new WebMarkupContainer("veto").setVisible(change.isVeto())); item.add(new IconLink.Builder("images/icons/tick.png", new DefaultClickResponder<RegulationChange>(ModelMaker.wrap(change)) { private static final long serialVersionUID = 1L; @SpringBean private DemocracyService democracyService; /** * @see com.tysanclan.site.projectewok.components.IconLink.DefaultClickResponder#onClick() */ @Override public void onClick() { democracyService.voteForRegulation(getUser(), getModelObject(), true); } }).setText("Yes, I want to " + change.getChangeType().toString().toLowerCase() + " this regulation").newInstance("yes")); item.add(new IconLink.Builder("images/icons/cross.png", new DefaultClickResponder<RegulationChange>(ModelMaker.wrap(change)) { private static final long serialVersionUID = 1L; @SpringBean private DemocracyService democracyService; /** * @see com.tysanclan.site.projectewok.components.IconLink.DefaultClickResponder#onClick() */ @Override public void onClick() { democracyService.voteForRegulation(getUser(), getModelObject(), false); } }).setText("No, I do not want to " + change.getChangeType().toString().toLowerCase() + " this regulation").newInstance("no")); } }); }
From source file:com.tysanclan.site.projectewok.pages.member.senate.SenateTruthsayerComplaintPage.java
License:Open Source License
public SenateTruthsayerComplaintPage() { super("Truthsayer Complaints"); add(new ListView<TruthsayerComplaint>("complaints", ModelMaker.wrap(complaintDAO.findAll())) { private static final long serialVersionUID = 1L; @Override// w w w .j a va2 s . c o m protected void populateItem(ListItem<TruthsayerComplaint> item) { TruthsayerComplaint c = item.getModelObject(); item.add(new MemberListItem("complainer", c.getComplainer())); item.add(new MemberListItem("truthsayer", c.getTruthsayer())); item.add(new Label("title", "Complaint against " + c.getTruthsayer().getUsername())); item.add(new Label("complaint", c.getComplaint()).setEscapeModelStrings(false)); boolean hasVoted = c.hasVoted(getUser()); item.add(new IconLink.Builder("images/icons/tick.png", new ComplaintResponder(c, getUser(), true)) .setText( "Yes, I feel this complaint is justified, and warrants stripping the rank of Truthsayer") .newInstance("yes").setVisible(!hasVoted)); item.add(new IconLink.Builder("images/icons/cross.png", new ComplaintResponder(c, getUser(), false)) .setText("No, I feel this complaint is without merit, and does not warrant a dismissal") .newInstance("no").setVisible(!hasVoted)); } }); }
From source file:com.tysanclan.site.projectewok.pages.member.senate.TruthsayerVotePage.java
License:Open Source License
public TruthsayerVotePage() { super("Truthsayer votes"); TruthsayerNominationFilter filter = new TruthsayerNominationFilter(); filter.setStartSet(true);/*from w w w.ja va2s . co m*/ add(new ListView<TruthsayerNomination>("nominations", ModelMaker.wrap(truthsayerNominationDAO.findByFilter(filter))) { private static final long serialVersionUID = 1L; @Override protected void populateItem(ListItem<TruthsayerNomination> item) { TruthsayerNomination nomination = item.getModelObject(); item.add(new MemberListItem("member", nomination.getUser())); int yesCount = 0, noCount = 0; TruthsayerNominationVote myVote = null; for (TruthsayerNominationVote vote : nomination.getVotes()) { if (vote.getSenator().equals(getUser())) { myVote = vote; } if (vote.getVerdict()) { yesCount++; } else { noCount++; } } item.add(new Label("yesCount", new Model<Integer>(yesCount))); item.add(new Label("noCount", new Model<Integer>(noCount))); String verdict = "Accepted"; if (yesCount > 0 || noCount > 0) { int total = yesCount + noCount; int fraction = (100 * yesCount) / total; if (fraction < 51) { verdict = "Rejected"; } } item.add(new Label("verdict", verdict)); Link<TruthsayerNomination> yesLink = new Link<TruthsayerNomination>("yes", ModelMaker.wrap(nomination)) { private static final long serialVersionUID = 1L; @SpringBean private LawEnforcementService lawEnforcementService; @Override public void onClick() { lawEnforcementService.voteInFavor(getUser(), getModelObject()); setResponsePage(new TruthsayerVotePage()); } }; yesLink.add(new ContextImage("icon", "images/icons/tick.png")); yesLink.setVisible(myVote == null); item.add(yesLink); Link<TruthsayerNomination> noLink = new Link<TruthsayerNomination>("no", ModelMaker.wrap(nomination)) { private static final long serialVersionUID = 1L; @SpringBean private LawEnforcementService lawEnforcementService; @Override public void onClick() { lawEnforcementService.voteAgainst(getUser(), getModelObject()); setResponsePage(new TruthsayerVotePage()); } }; noLink.add(new ContextImage("icon", "images/icons/cross.png")); noLink.setVisible(myVote == null); item.add(noLink); item.add(new Label("vote", myVote == null ? null : myVote.getVerdict() ? "Yes" : "No") .setVisible(myVote != null)); } }); }
From source file:com.tysanclan.site.projectewok.pages.member.senate.VetoPage.java
License:Open Source License
public VetoPage() { super("Proposed regulation changes"); add(new ListView<RegulationChange>("votes", ModelMaker.wrap(regulationChangeDAO.findAll())) { private static final long serialVersionUID = 1L; @Override//from w w w . jav a 2s.c om protected void populateItem(ListItem<RegulationChange> item) { RegulationChange change = item.getModelObject(); String name = change.getChangeType() == ChangeType.ADD ? change.getTitle() : change.getRegulation().getName(); item.add(new Label("title", "" + change.getChangeType().toString() + " regulation " + name)); if (change.getChangeType() == ChangeType.MODIFY) { item.add(new Label("name", change.getTitle())); } else { item.add(new WebMarkupContainer("name").setVisible(false)); } if (change.getChangeType() != ChangeType.ADD) { item.add(new Label("current", change.getRegulation().getContents()) .setEscapeModelStrings(false)); } else { item.add(new WebMarkupContainer("current").setVisible(false)); } if (change.getChangeType() == ChangeType.REPEAL) { item.add(new WebMarkupContainer("body").setVisible(false)); } else { item.add(new Label("body", change.getDescription()).setEscapeModelStrings(false)); } item.add(new Form<RegulationChange>("vetoForm", ModelMaker.wrap(change)) { private static final long serialVersionUID = 1L; @SpringBean private DemocracyService democracyService; @Override protected void onSubmit() { democracyService.vetoRegulationChange(getUser(), getModelObject()); } }.setVisible(!change.isVeto())); item.add(new WebMarkupContainer("veto").setVisible(change.isVeto())); } }); }
From source file:com.tysanclan.site.projectewok.pages.member.SignGamePetitionsPage.java
License:Open Source License
/** * /*from w w w . ja v a 2s .co m*/ */ public SignGamePetitionsPage() { super("New game petitions"); add(new Label("count", new Model<Integer>(gameService.getRequiredPetitionSignatures()))); add(new ListView<GamePetition>("petitions", ModelMaker.wrap(gamePetitionDAO.findAll())) { 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<GamePetition> item) { GamePetition petition = item.getModelObject(); Form<GamePetition> form = new Form<GamePetition>("form", ModelMaker.wrap(petition)) { private static final long serialVersionUID = 1L; /** * @see org.apache.wicket.markup.html.form.Form#onSubmit() */ @Override protected void onSubmit() { super.onSubmit(); GamePetition gp = getModelObject(); gameService.signPetition(gp, getUser()); setResponsePage(new SignGamePetitionsPage()); } }; item.add(form); item.add(new Label("name", petition.getName())); form.add(new Label("name2", petition.getName())); form.add(new Label("starter", petition.getRequester().getUsername())); form.add(new Image("icon", new ByteArrayResource(ImageUtil.getMimeType(petition.getImage()), petition.getImage()))); form.add(new DateLabel("expires", petition.getExpires())); form.add(new ListView<User>("signatures", ModelMaker.wrap(petition.getSignatures())) { 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 MemberListItem("user", user)); } }); form.add(new WebMarkupContainer("sign").setVisible(!petition.getSignatures().contains(getUser()) && !petition.getRequester().equals(getUser()))); } }); }
From source file:com.tysanclan.site.projectewok.pages.member.SignRealmPetitionsPage.java
License:Open Source License
/** * //from w ww.j a va 2 s .c om */ public SignRealmPetitionsPage() { super("Sign realm petitions"); add(new Label("count", new Model<Integer>(realmService.getRequiredPetitionSignatures()))); add(new ListView<RealmPetition>("petitions", ModelMaker.wrap(realmPetitionDAO.findAll())) { 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<RealmPetition> item) { RealmPetition petition = item.getModelObject(); Form<RealmPetition> form = new Form<RealmPetition>("form", ModelMaker.wrap(petition)) { private static final long serialVersionUID = 1L; /** * @see org.apache.wicket.markup.html.form.Form#onSubmit() */ @Override protected void onSubmit() { super.onSubmit(); RealmPetition rp = getModelObject(); realmService.signPetition(rp, getUser()); setResponsePage(new SignRealmPetitionsPage()); } }; item.add(form); item.add(new Label("name", petition.getGame().getName() + " on " + (petition.getName() != null ? petition.getName() : petition.getRealm().getName()))); form.add(new Label("realm", petition.getName() != null ? petition.getName() : petition.getRealm().getName())); form.add(new Label("game", petition.getGame().getName())); form.add(new Label("starter", petition.getRequester().getUsername())); form.add(new DateLabel("expires", petition.getExpires())); form.add(new ListView<User>("signatures", ModelMaker.wrap(petition.getSignatures())) { 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 MemberListItem("user", user)); } }); form.add(new WebMarkupContainer("sign").setVisible(!petition.getSignatures().contains(getUser()) && !petition.getRequester().equals(getUser()))); } }); }
From source file:com.tysanclan.site.projectewok.pages.member.SkypeOverviewPage.java
License:Open Source License
public SkypeOverviewPage() { super("Skype accounts"); add(new ListView<User>("users", profileDAO.getSkypeUsers()) { private static final long serialVersionUID = 1L; @Override//from w w w. java2 s . c om protected void populateItem(ListItem<User> item) { User user = item.getModelObject(); item.add(new MemberListItem("username", user)); String skypeAddress = user.getProfile().getInstantMessengerAddress(); item.add(new Label("skype", skypeAddress) .add(AttributeModifier.replace("href", String.format("skype:%s?call", skypeAddress)))); } }); }
From source file:com.tysanclan.site.projectewok.pages.member.SubscriptionPaymentPage.java
License:Open Source License
public SubscriptionPaymentPage() { super("Subscription payments due"); if (roleService.getTreasurer() == null || roleService.getTreasurer().getPaypalAddress() == null) { OverviewPage p = new OverviewPage(); p.error("No Treasurer, or Treasurer has not setup Paypal"); throw new RestartResponseAtInterceptPageException(p); }//from w ww . j av a 2 s .c o m add(new ListView<SubscriptionPayment>("requests", ModelMaker .wrap(ImmutableList.copyOf(Iterables.filter(getUser().getPayments(), new UnpaidFilter())))) { private static final long serialVersionUID = 1L; @Override protected void populateItem(ListItem<SubscriptionPayment> item) { SubscriptionPayment payment = item.getModelObject(); DateTime dt = new DateTime(payment.getDate()); String dateTimeStr = dt.toString("dd MMMM yyyy", Locale.US); item.add(new Label("header", "Subscription Payment - " + dateTimeStr)); item.add(new Label("amount", new DollarSignModel(new Model<BigDecimal>(payment.getSubscription().getAmount())))); item.add(new HiddenField<String>("paypalAddress", new Model<String>( roleService.getTreasurer() != null ? roleService.getTreasurer().getPaypalAddress() : null)) .add(AttributeModifier.replace("name", "business"))); item.add(new HiddenField<String>("itemname", new Model<String>("The Tysan Clan - Subscription Payment - " + dateTimeStr))); item.add(new HiddenField<String>("itemdesc", new Model<String>("The Tysan Clan - Subscription Payment - " + dateTimeStr)) .add(AttributeModifier.replace("name", "item_name"))); // item.add(new HiddenField<String>("amount2", new Model<String>(payment.getSubscription().getAmount().toString())) .add(AttributeModifier.replace("name", "amount"))); item.add(new HiddenField<String>("returnUrl", new Model<String>("https://www.tysanclan.com/processSubscriptionPayment/" + payment.getId() + "/" + paymentDAO.getConfirmationKey(payment) + "/")) .add(AttributeModifier.replace("name", "return"))); } }); }
From source file:com.tysanclan.site.projectewok.pages.member.UntenabilityVotePage.java
License:Open Source License
public UntenabilityVotePage() { super("Untenability Votes"); add(new ListView<UntenabilityVote>("votes", ModelMaker.wrap(untenabilityVoteDAO.findAll())) { private static final long serialVersionUID = 1L; @Override//from w w w .j av a 2 s.c o m protected void populateItem(ListItem<UntenabilityVote> item) { UntenabilityVote vote = item.getModelObject(); item.add(new Label("name", vote.getRegulation().getName())); UntenabilityVoteChoice myChoice = null; for (UntenabilityVoteChoice choice : vote.getChoices()) { if (choice.getCaster().equals(getUser())) { myChoice = choice; break; } } String currentChoice = "You have not yet voted on this issue"; if (myChoice != null) { currentChoice = myChoice.isInFavor() ? "You have voted to repeal the regulation" : "You have voted to maintain the regulation"; } item.add(new Label("currentvote", currentChoice)); item.add(new IconLink.Builder("images/icons/tick.png", new DefaultClickResponder<UntenabilityVote>(ModelMaker.wrap(vote)) { private static final long serialVersionUID = 1L; @SpringBean private DemocracyService democracyService; /** * @see com.tysanclan.site.projectewok.components.IconLink.DefaultClickResponder#onClick() */ @Override public void onClick() { democracyService.castUntenabilityVote(getUser(), getModelObject(), true); setResponsePage(new UntenabilityVotePage()); } }).setText("Yes, I want this regulation repealled!").newInstance("yes")); item.add(new IconLink.Builder("images/icons/cross.png", new DefaultClickResponder<UntenabilityVote>(ModelMaker.wrap(vote)) { private static final long serialVersionUID = 1L; @SpringBean private DemocracyService democracyService; /** * @see com.tysanclan.site.projectewok.components.IconLink.DefaultClickResponder#onClick() */ @Override public void onClick() { democracyService.castUntenabilityVote(getUser(), getModelObject(), false); setResponsePage(new UntenabilityVotePage()); } }).setText("No, this regulation must remain in effect!").newInstance("no")); } }); }
From source file:com.tysanclan.site.projectewok.pages.member.ViewBugPage.java
License:Open Source License
/** * @param bug// w w w . j av a 2 s . c o m */ private void initPage(Bug bug) { bugModel = ModelMaker.wrap(bug); setPageTitle(bug.getTitle() + " - " + bug.getReportType().getDescription()); add(new Label("description", bug.getDescription()).setEscapeModelStrings(true)); add(new Label("permalink", "Link to this " + bug.getReportType().getDescription()) .add(AttributeModifier.replace("href", bug.getReportType().getUrl(bug.getId())))); add(new Label("status", bug.getStatus().toString())); add(new DateLabel("created", bug.getReported())); add(new DateLabel("updated", bug.getUpdated())); if (bug.getReporter() != null) { add(new MemberListItem("reportedBy", bug.getReporter())); } else { add(new Label("reportedBy", "<i>Someone not logged in</i>").setEscapeModelStrings(false)); } add(new Label("fixedIn", bug.getResolutionVersion()).setVisible(bug.getResolutionVersion() != null)); add(new ListView<BugComment>("comments", ModelMaker.wrap(bug.getComments())) { private static final long serialVersionUID = 1L; @Override protected void populateItem(ListItem<BugComment> item) { BugComment comment = item.getModelObject(); if (comment.getCommenter() != null) { item.add(new MemberListItem("user", comment.getCommenter())); } else { item.add(new Label("user", "<i>Non-logged in user</i>").setEscapeModelStrings(false)); } item.add(new Label("comment", comment.getDescription()).setEscapeModelStrings(false)); } }); final TextArea<String> descriptionArea = new TextArea<String>("descriptionArea", new Model<String>("")); descriptionArea.setRequired(true); Form<Bug> createCommentForm = new Form<Bug>("addForm", ModelMaker.wrap(bug)) { private static final long serialVersionUID = 1L; @Override protected void onSubmit() { tracker.addCommentToBug(getModelObject(), getUser(), descriptionArea.getModelObject()); setResponsePage(new ViewBugPage(getModelObject())); } }; createCommentForm.add(descriptionArea); add(createCommentForm); add(new IconLink.Builder("images/icons/bug_go.png", new AcceptResponder(bug)).setText("I will fix this bug") .newInstance("accept") .setVisible(getUser().isBugReportMaster() && !getUser().equals(bug.getAssignedTo()))); add(new IconLink.Builder("images/icons/bug_delete.png", new CloseResponder(bug)) .setText("This bug/feature is fixed/realized in the current version, and can be closed") .newInstance("close") .setVisible(getUser().isBugReportMaster() && bug.getStatus() == BugStatus.RESOLVED)); add(new IconLink.Builder("images/icons/bug_add.png", new ReopenResponder(bug)) .setText("This bug still occurs").newInstance("reopen").setVisible( bug.getStatus() == BugStatus.CLOSED && bug.getReportType() != ReportType.FEATUREREQUEST)); WebMarkupContainer masterPanel = new WebMarkupContainer("masterPanel"); BugFilter filter = new BugFilter(); filter.setExclude(bug.getId()); List<Bug> otherBugs = bugDAO.findByFilter(filter); final DropDownChoice<Bug> bugSelect = new DropDownChoice<Bug>("duplicate", ModelMaker.wrap((Bug) null), ModelMaker.wrapChoices(otherBugs), new BugRenderer()); bugSelect.setRequired(true); bugSelect.setNullValid(false); Form<Bug> resolveAsDuplicateForm = new Form<Bug>("markAsDuplicateForm", ModelMaker.wrap(bug)) { private static final long serialVersionUID = 1L; @Override protected void onSubmit() { tracker.markAsDuplicate(getModelObject(), bugSelect.getModelObject()); setResponsePage(new BugOverviewPage()); } }; resolveAsDuplicateForm.add(bugSelect); masterPanel.add(resolveAsDuplicateForm); masterPanel.setVisible(getUser().isBugReportMaster() && getUser().equals(bug.getAssignedTo()) && (bug.getStatus() == BugStatus.NEW || bug.getStatus() == BugStatus.ACKNOWLEDGED)); final TextField<String> fixedInVersionField = new TextField<String>("fixedIn", new Model<String>(TysanApplication.getApplicationVersion())); fixedInVersionField.setRequired(true); final TextArea<String> solutionArea = new TextArea<String>("solutionArea", new Model<String>("")); solutionArea.setRequired(true); Form<Bug> resolveBugForm = new Form<Bug>("resolveForm", ModelMaker.wrap(bug)) { private static final long serialVersionUID = 1L; @Override protected void onSubmit() { tracker.bugResolved(getModelObject(), solutionArea.getModelObject(), fixedInVersionField.getModelObject()); setResponsePage(new BugOverviewPage()); } }; resolveBugForm.add(solutionArea); resolveBugForm.add(fixedInVersionField); masterPanel.add(resolveBugForm); add(masterPanel); }