List of usage examples for org.apache.wicket.markup.html WebComponent setOutputMarkupId
public final Component setOutputMarkupId(final boolean output)
From source file:dk.teachus.frontend.pages.stats.teacher.IncomePerMonthPage.java
License:Apache License
public IncomePerMonthPage(PageParameters pageParameters) { int year = pageParameters.get(0).toInt(new DateMidnight().getYear()); add(new Label("perMonth", TeachUsSession.get().getString("IncomePerMonthPage.perMonth"))); //$NON-NLS-1$ //$NON-NLS-2$ BookingDAO bookingDAO = TeachUsApplication.get().getBookingDAO(); List<Integer> yearsWithPaidBookings = bookingDAO.getYearsWithBookings(getPerson()); // If the latest booking is not in the selected year, then select the latest year with bookings if (yearsWithPaidBookings.size() > 0 && yearsWithPaidBookings.contains(year) == false) { year = 0;//from ww w . j a v a 2 s .co m for (Integer y : yearsWithPaidBookings) { if (y > year) { year = y; } } } Form<Void> form = new Form<Void>("form"); //$NON-NLS-1$ add(form); final IModel<Integer> yearModel = new Model<Integer>(year); final DropDownChoice<Integer> years = new DropDownChoice<Integer>("years", yearModel, //$NON-NLS-1$ yearsWithPaidBookings); years.add(new AjaxFormComponentUpdatingBehavior("onchange") { //$NON-NLS-1$ private static final long serialVersionUID = 1L; @Override protected void onUpdate(AjaxRequestTarget target) { int year = (Integer) yearModel.getObject(); PageParameters pageParameters = new PageParameters(); pageParameters.set(0, year); getRequestCycle().setResponsePage(IncomePerMonthPage.class, pageParameters); } }); form.add(years); DateMidnight fromDate = new DateMidnight(year, 1, 1); DateMidnight toDate = new DateMidnight(year, 12, 31); List<PupilBooking> paidBookings = bookingDAO.getPaidBookings(getPerson(), fromDate, toDate); // Get the unpaid bookings List<PupilBooking> allUnPaidBookings = bookingDAO.getUnPaidBookings(getPerson(), fromDate, toDate); // Extract the unpaid bookings which is before now List<PupilBooking> unPaidBookings = new ArrayList<PupilBooking>(); List<PupilBooking> futureBookings = new ArrayList<PupilBooking>(); DateTime now = new DateTime(); for (PupilBooking booking : allUnPaidBookings) { if (now.isAfter(booking.getDate())) { unPaidBookings.add(booking); } else { futureBookings.add(booking); } } final List<MonthIncome> data = new ArrayList<MonthIncome>(); for (PupilBooking booking : paidBookings) { MonthIncome monthIncome = getMonthIncome(data, booking); monthIncome.addPaid(booking.getPeriod().getPrice()); monthIncome.addPaidLesson(); } for (PupilBooking booking : unPaidBookings) { MonthIncome monthIncome = getMonthIncome(data, booking); monthIncome.addUnpaid(booking.getPeriod().getPrice()); monthIncome.addUnpaidLesson(); } for (PupilBooking booking : futureBookings) { MonthIncome monthIncome = getMonthIncome(data, booking); monthIncome.addFuture(booking.getPeriod().getPrice()); monthIncome.addFutureLesson(); } WebComponent chart = new WebComponent("chart") { private static final long serialVersionUID = 1L; @Override public void renderHead(IHeaderResponse response) { response.renderJavaScriptReference("https://www.google.com/jsapi"); StringBuilder b = new StringBuilder(); b.append("google.load('visualization', '1', {packages:['corechart']});"); b.append("google.setOnLoadCallback(drawChart);"); b.append("function drawChart() {"); b.append("var data = google.visualization.arrayToDataTable(["); b.append("['").append(TeachUsSession.get().getString("General.month")).append("', "); b.append("'").append(TeachUsSession.get().getString("General.paid")).append("', "); b.append("'").append(TeachUsSession.get().getString("General.unpaid")).append("', "); b.append("'").append(TeachUsSession.get().getString("IncomePerMonthPage.future")).append("'],"); StringBuilder d = new StringBuilder(); for (MonthIncome monthIncome : data) { if (d.length() > 0) { d.append(","); } d.append("["); d.append("'").append(new MonthChoiceRenderer().getDisplayValue(monthIncome.getMonth())) .append("', "); d.append(monthIncome.getPaid()).append(", "); d.append(monthIncome.getUnpaid()).append(", "); d.append(monthIncome.getFuture()); d.append("]"); } b.append(d); b.append("]);"); b.append("var options = {"); b.append("isStacked: true,"); b.append("series: {0:{color:'#46a546'},1:{color:'#9d261d'},2:{color:'#049cdb'}},"); b.append("vAxis: {format:'#,##0.00'},"); b.append("};"); b.append("var chart = new google.visualization.ColumnChart(document.getElementById('") .append(getMarkupId()).append("'));"); b.append("chart.draw(data, options);"); b.append("}"); response.renderJavaScript(b, "chart"); } }; chart.setOutputMarkupId(true); add(chart); // Add list of data in static form List<IColumn<MonthIncome>> columns = new ArrayList<IColumn<MonthIncome>>(); columns.add(new RendererPropertyColumn<MonthIncome, Integer>( new Model<String>(TeachUsSession.get().getString("General.month")), "month", //$NON-NLS-1$//$NON-NLS-2$ new MonthChoiceRenderer())); columns.add(new RendererPropertyColumn<MonthIncome, Object>( new Model<String>(TeachUsSession.get().getString("General.paid")), "paid", //$NON-NLS-1$//$NON-NLS-2$ new CurrencyChoiceRenderer())); columns.add(new PropertyColumn<MonthIncome>( new Model<String>(TeachUsSession.get().getString("IncomePerMonthPage.paidBookings")), //$NON-NLS-1$ "paidLessonCount")); //$NON-NLS-1$ columns.add(new RendererPropertyColumn<MonthIncome, Object>( new Model<String>(TeachUsSession.get().getString("General.unpaid")), "unpaid", //$NON-NLS-1$//$NON-NLS-2$ new CurrencyChoiceRenderer())); columns.add(new PropertyColumn<MonthIncome>( new Model<String>(TeachUsSession.get().getString("IncomePerMonthPage.unPaidBookings")), //$NON-NLS-1$ "unpaidLessonCount")); //$NON-NLS-1$ columns.add(new RendererPropertyColumn<MonthIncome, Object>( new Model<String>(TeachUsSession.get().getString("IncomePerMonthPage.future")), "future", //$NON-NLS-1$//$NON-NLS-2$ new CurrencyChoiceRenderer())); columns.add(new PropertyColumn<MonthIncome>( new Model<String>(TeachUsSession.get().getString("IncomePerMonthPage.futureLessons")), //$NON-NLS-1$ "futureLessonCount")); //$NON-NLS-1$ columns.add(new RendererPropertyColumn<MonthIncome, Object>( new Model<String>(TeachUsSession.get().getString("General.total")), "total", //$NON-NLS-1$//$NON-NLS-2$ new CurrencyChoiceRenderer())); columns.add(new PropertyColumn<MonthIncome>( new Model<String>(TeachUsSession.get().getString("IncomePerMonthPage.totalLessons")), //$NON-NLS-1$ "totalLessonCount")); //$NON-NLS-1$ add(new ListPanel<MonthIncome>("list", columns, data)); //$NON-NLS-1$ }
From source file:dk.teachus.frontend.pages.stats.teacher.IncomePerPupilPage.java
License:Apache License
private void createPercentDistribution() { add(new Label("pctDistribution", //$NON-NLS-1$ TeachUsSession.get().getString("IncomePerPupilPage.percentageDistribution"))); //$NON-NLS-1$ BookingDAO bookingDAO = TeachUsApplication.get().getBookingDAO(); List<PupilBooking> bookings = bookingDAO.getPaidBookings(getPerson(), startDate, endDate); // Build the dataset final List<PupilSummary> sumList = new ArrayList<PupilSummary>(); double total = 0; for (PupilBooking booking : bookings) { PupilSummary pupilSummary = new PupilSummary(booking.getPupil()); if (sumList.contains(pupilSummary)) { pupilSummary = sumList.get(sumList.indexOf(pupilSummary)); } else {/*from w w w.ja v a 2 s . c o m*/ sumList.add(pupilSummary); } total += booking.getPeriod().getPrice(); pupilSummary.addAmount(booking.getPeriod().getPrice()); } for (PupilSummary summary : sumList) { summary.calculatePercent(total); } Collections.sort(sumList, new PupilSummaryComparator()); // Sheet List<IColumn<PupilSummary>> columns = new ArrayList<IColumn<PupilSummary>>(); columns.add(new PropertyColumn<PupilSummary>( new Model<String>(TeachUsSession.get().getString("General.pupil")), "pupil.name")); //$NON-NLS-1$ //$NON-NLS-2$ columns.add(new RendererPropertyColumn<PupilSummary, Object>( new Model<String>(TeachUsSession.get().getString("General.total")), "total", //$NON-NLS-1$//$NON-NLS-2$ new CurrencyChoiceRenderer())); columns.add(new RendererPropertyColumn<PupilSummary, Double>( new Model<String>(TeachUsSession.get().getString("General.percent")), "percent", //$NON-NLS-1$//$NON-NLS-2$ new PercentChoiceRenderer())); ListPanel<PupilSummary> pctDistributionSheet = new ListPanel<PupilSummary>("pctDistributionSheet", columns, sumList); add(pctDistributionSheet); // Chart WebComponent chart = new WebComponent("chart") { private static final long serialVersionUID = 1L; @Override public void renderHead(IHeaderResponse response) { response.renderJavaScriptReference("https://www.google.com/jsapi"); StringBuilder b = new StringBuilder(); b.append("google.load('visualization', '1', {packages:['corechart']});"); b.append("google.setOnLoadCallback(drawChart);"); b.append("function drawChart() {"); b.append("var data = google.visualization.arrayToDataTable(["); b.append("['").append(TeachUsSession.get().getString("General.pupil")).append("', "); b.append("'").append(TeachUsSession.get().getString("General.total")).append("'],"); StringBuilder d = new StringBuilder(); for (PupilSummary pupilSummary : sumList) { if (d.length() > 0) { d.append(","); } d.append("["); d.append("'").append(pupilSummary.getPupil().getName()).append("', "); d.append(pupilSummary.getTotal()); d.append("]"); } b.append(d); b.append("]);"); b.append("var options = {"); b.append("};"); b.append("var chart = new google.visualization.PieChart(document.getElementById('") .append(getMarkupId()).append("'));"); b.append("chart.draw(data, options);"); b.append("}"); response.renderJavaScript(b, "chart"); } }; chart.setOutputMarkupId(true); add(chart); }
From source file:net.rrm.ehour.ui.userprefs.panel.ChangePasswordPanel.java
License:Open Source License
private WebComponent createEmptyServerMessage() { WebComponent serverMessage = new WebComponent("serverMessage"); serverMessage.setOutputMarkupId(true); return serverMessage; }
From source file:org.artifactory.common.wicket.component.table.columns.panel.links.LinksColumnPanel.java
License:Open Source License
public LinksColumnPanel(String id) { super(id);/*from w w w . j av a2 s . c o m*/ add(ResourcePackage.forJavaScript(LinksColumnPanel.class)); linksPanel = new LinksPanel("links"); linksPanel.setOutputMarkupId(true); add(linksPanel); WebComponent icon = new WebComponent("icon"); icon.setOutputMarkupId(true); add(icon); HtmlTemplate initScript = new HtmlTemplate("initScript"); initScript.setParameter("iconId", new PropertyModel(icon, "markupId")); initScript.setParameter("panelId", new PropertyModel(linksPanel, "markupId")); add(initScript); }
From source file:org.efaps.ui.wicket.components.editor.EditorPanel.java
License:Apache License
/** * @param _wicketId wicketID for this component * @param _model model for this componet *///from w w w . j a v a 2 s . c om public EditorPanel(final String _wicketId, final IModel<AbstractUIField> _model) { super(_wicketId, _model); final WebComponent text = new WebComponent("text", _model) { /** * */ private static final long serialVersionUID = 1L; /** * @see org.apache.wicket.Component#onComponentTag(org.apache.wicket.markup.ComponentTag) * @param _tag */ @Override protected void onComponentTag(final ComponentTag _tag) { super.onComponentTag(_tag); //_tag.put("name", ((UIFormCell) super.getDefaultModelObject()).getName()); _tag.put("style", "display:none"); } @Override public void onComponentTagBody(final MarkupStream _markupStream, final ComponentTag _openTag) { } }; this.add(text); text.setOutputMarkupId(true); final WebComponent editor = new WebComponent("editor", _model) { private static final long serialVersionUID = 1L; @Override protected void onComponentTag(final ComponentTag _tag) { super.onComponentTag(_tag); _tag.put("onChange", "document.getElementById('" + text.getMarkupId(true) + "').value=arguments[0];"); } /** * @see org.apache.wicket.Component#onComponentTagBody(org.apache.wicket.markup.MarkupStream, * org.apache.wicket.markup.ComponentTag) * @param _markupStream * @param _openTag */ @Override public void onComponentTagBody(final MarkupStream _markupStream, final ComponentTag _openTag) { } }; editor.add(new EditorBehavior(null)); this.add(editor); }