/* SASAbusHTML5 - HTML5 App for SASA bus Copyright (C) 2013 TIS Innovation Park - Bolzano/Bozen - Italy Copyright (C) 2013-2014 Davide Montesin <d@vide.bz> - Bolzano/Bozen - Italy This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. */ package it.bz.tis.sasabus.html5.shared.ui; import it.bz.tis.sasabus.backend.shared.travelplanner.ConRes; import it.bz.tis.sasabus.backend.shared.travelplanner.Connection; import it.bz.tis.sasabus.html5.shared.SASAbusI18N; import bz.davide.dmweb.shared.view.DMClickEvent; import bz.davide.dmweb.shared.view.DMClickHandler; import bz.davide.dmweb.shared.view.DMHashNavigationPanel; import bz.davide.dmweb.shared.view.DivView; import bz.davide.dmweb.shared.view.SpanView; /** * @author Davide Montesin <d@vide.bz> */ public class RouteResultOverviewPanel extends DivView { public RouteResultOverviewPanel(ConRes[] routes, final DMHashNavigationPanel navigationPanel, final SASAbusI18N i18n) { super(); for (final ConRes conRes : routes) { final Connection connection = conRes.getConnectionList().getConnections()[0]; RowItem rowItem = new RowItem(new DMClickHandler() { @Override public void onClick(DMClickEvent event) { navigationPanel.newPage(new RouteResultDetailPanel(connection.getConSectionList(), navigationPanel, i18n)); } }); String startTime = formatTime(connection.getOverview().getDeparture().getBasicStop().getDep().getTime()); String transfers = i18n.getLocalizedText("RouteResultOverviewPanel_transfers") + ": " + connection.getOverview().getTransfers(); String duration = i18n.getLocalizedText("RouteResultOverviewPanel_duration") + ": " + formatTime(connection.getOverview().getDuration().getTime()); String endTime = formatTime(connection.getOverview().getArrival().getBasicStop().getArr().getTime()); rowItem.appendChild(new SpanView(startTime + " ---> " + endTime)); rowItem.appendChild(new SpanView(transfers + " - " + duration)); this.appendChild(rowItem); } } static String formatTime(String time) { if (time.startsWith("00d")) { time = time.substring(3); } String[] timeParts = time.split(":"); time = timeParts[0] + ":" + timeParts[1]; return time; } }