package scrum.client.collaboration;
import ilarkesto.gwt.client.ButtonWidget;
import scrum.client.common.AScrumWidget;
import scrum.client.common.BlockListWidget;
import scrum.client.common.UserGuideWidget;
import scrum.client.workspace.PagePanel;
import com.google.gwt.user.client.ui.Widget;
public class ForumWidget extends AScrumWidget {
public BlockListWidget<ForumSupport> list;
@Override
protected Widget onInitialization() {
new RequestForumServiceCall(false).execute();
list = new BlockListWidget<ForumSupport>(ForumItemBlock.FACTORY);
list.setAutoSorter(ForumSupport.COMPARATOR);
PagePanel page = new PagePanel();
page.addHeader("Forum", new ButtonWidget(new CreateSubjectAction()));
page.addSection(list);
page.addSection(new UserGuideWidget(getLocalizer().views().forum(),
getCurrentProject().getSubjects().size() < 5, getCurrentUser().getHideUserGuideForumModel()));
return page;
}
@Override
protected void onUpdate() {
list.setObjects(getCurrentProject().getEntitiesWithComments());
super.onUpdate();
}
public boolean select(ForumSupport entity) {
if (!list.contains(entity)) update();
return list.showObject(entity);
}
}