package scrum.client.dashboard;
import java.util.Collections;
import java.util.List;
import scrum.client.common.AScrumWidget;
import scrum.client.issues.Issue;
import scrum.client.project.Project;
import scrum.client.project.Requirement;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.Widget;
public class UpcomingPoTasksWidget extends AScrumWidget {
private HTML html;
@Override
protected Widget onInitialization() {
html = new HTML();
return html;
}
@Override
protected void onUpdate() {
StringBuilder sb = new StringBuilder();
sb.append("<div class='UpcomingTasksWidget'>");
Project project = getCurrentProject();
List<Issue> fixedBugs = project.getFixedBugs();
Collections.sort(fixedBugs, project.getIssuesOrderComparator());
if (!fixedBugs.isEmpty()) {
sb.append("Fixed bugs to review:");
sb.append("<ul>");
for (Issue issue : fixedBugs) {
sb.append("<li>");
sb.append(issue.toHtml());
sb.append("</li>");
}
sb.append("</ul>");
}
List<Requirement> decidableRequirements = project.getCurrentSprint().getDecidableUndecidedRequirements();
Collections.sort(decidableRequirements, project.getRequirementsOrderComparator());
if (!decidableRequirements.isEmpty()) {
sb.append("Completed Stories to review:");
sb.append("<ul>");
for (Requirement requirement : decidableRequirements) {
sb.append("<li>");
sb.append(requirement.toHtml());
sb.append("</li>");
}
sb.append("</ul>");
}
sb.append("</div>");
html.setHTML(sb.toString());
}
}