Merge branch 'develop' of ssh://git.dsv.su.se/git/scipro/scipro into develop

* 'develop' of ssh://git.dsv.su.se/git/scipro/scipro:
  Fix of broken ui-logic, was impossible to create new final seminar
  Spelling+comments
  Fix of hiding of "Last 12 months" on peer portal page depending on
This commit is contained in:
Fredrik Norberg 2011-07-28 17:15:10 +02:00
commit 7563cc7e7f
4 changed files with 21 additions and 20 deletions

@ -56,7 +56,7 @@ public abstract class AbstractMenuPanel extends Panel {
protected void populateItem( ListItem<MenuItem> item ) { protected void populateItem( ListItem<MenuItem> item ) {
final MenuItem mi = item.getModelObject(); final MenuItem mi = item.getModelObject();
boolean highLightAsCurrentByInterface = false; boolean highLightAsCurrentByInterface = false;
Class<?> menuItemInterface = mi.getMenuHilightInterface(); Class<?> menuItemInterface = mi.getMenuHighlightInterface();
if( menuItemInterface != null ){ if( menuItemInterface != null ){
for( Class<?> actualPageInterface : containerClass.getInterfaces() ){ for( Class<?> actualPageInterface : containerClass.getInterfaces() ){
if( actualPageInterface.equals(menuItemInterface) ){ if( actualPageInterface.equals(menuItemInterface) ){
@ -72,7 +72,7 @@ public abstract class AbstractMenuPanel extends Panel {
&& &&
mi.getTargetClass().getSuperclass() != menuContainerCommonSuperClass mi.getTargetClass().getSuperclass() != menuContainerCommonSuperClass
) )
){ ){
//item.setMarkupId("current"); //item.setMarkupId("current");
//item.setOutputMarkupId(true); //item.setOutputMarkupId(true);
//Replaced the above because it generates invalid markup if two menus are added to the same page (id no longer unique) //Replaced the above because it generates invalid markup if two menus are added to the same page (id no longer unique)
@ -99,7 +99,8 @@ public abstract class AbstractMenuPanel extends Panel {
} }
/** /**
* May not rely on anything in the implementing class's constructor as this will not have been initialized yet. * May not rely on anything in the implementing class's constructor as this will not have been initialized yet.
* Items are rendered from left to right as you might expect, first item in the list will be first tab item on the left. * Items are rendered from left to right (or top to bottom depending on type of menu) as you might expect,
* the first item in the list will be the first menu item on the left/top.
* @return * @return
*/ */
protected abstract List<MenuItem> getItemList(); protected abstract List<MenuItem> getItemList();
@ -118,7 +119,7 @@ public abstract class AbstractMenuPanel extends Panel {
private Class<? extends Page> targetClass; private Class<? extends Page> targetClass;
private PageParameters pp; private PageParameters pp;
private String iconName; private String iconName;
private Class<? extends MenuHighlight> menuHilightInterface; private Class<? extends MenuHighlight> menuHighlightInterface;
public MenuItem(final String name, final Class<? extends Page> targetClass) { public MenuItem(final String name, final Class<? extends Page> targetClass) {
this(name, targetClass, null, null, null); this(name, targetClass, null, null, null);
@ -148,7 +149,7 @@ public abstract class AbstractMenuPanel extends Panel {
public MenuItem(final String name, final Class<? extends Page> targetClass, final Class<? extends MenuHighlight> menuHilightInterface, PageParameters pp, String iconName) { public MenuItem(final String name, final Class<? extends Page> targetClass, final Class<? extends MenuHighlight> menuHilightInterface, PageParameters pp, String iconName) {
this.name = name; this.name = name;
this.targetClass = targetClass; this.targetClass = targetClass;
this.menuHilightInterface = menuHilightInterface; this.menuHighlightInterface = menuHilightInterface;
this.pp = pp; this.pp = pp;
this.iconName = iconName == null ? ImageIcon.ICON_EMPTY : iconName; this.iconName = iconName == null ? ImageIcon.ICON_EMPTY : iconName;
} }
@ -169,13 +170,13 @@ public abstract class AbstractMenuPanel extends Panel {
return iconName; return iconName;
} }
public MenuItem setMenuHilightInterface(Class<? extends MenuHighlight> menuHilightInterface) { public MenuItem setMenuHighlightInterface(Class<? extends MenuHighlight> menuHighlightInterface) {
this.menuHilightInterface = menuHilightInterface; this.menuHighlightInterface = menuHighlightInterface;
return this; return this;
} }
public Class<? extends MenuHighlight> getMenuHilightInterface() { public Class<? extends MenuHighlight> getMenuHighlightInterface() {
return menuHilightInterface; return menuHighlightInterface;
} }

@ -23,22 +23,15 @@ public class ProjectFinalSeminarContainerPanel extends Panel {
public ProjectFinalSeminarContainerPanel(final String id, final Project project, final boolean isSupervisorView){ public ProjectFinalSeminarContainerPanel(final String id, final Project project, final boolean isSupervisorView){
super(id); super(id);
final List<FinalSeminar> seminars = finalSeminarDao.findFinalSeminarsByProject(project); List<FinalSeminar> seminars = finalSeminarDao.findFinalSeminarsByProject(project);
if(isSupervisorView && !seminars.isEmpty() ){ if(isSupervisorView && seminars.isEmpty() ){
add(new OpponentPanel("addSeminar", project)); add(new OpponentPanel("addSeminar", project));
} }
else { else {
add(new EmptyPanel("addSeminar")); add(new EmptyPanel("addSeminar"));
} }
add(new Label("noSeminarsMessage", "No final seminar has been created for this project"){ add(new Label("noSeminarsMessage", "No final seminar has been created for this project").setVisible(seminars.isEmpty()));
private static final long serialVersionUID = 1L;
@Override
public boolean isVisible(){
return seminars.size() == 0;
}
});
add(new ListView<FinalSeminar>("seminarList", seminars){ add(new ListView<FinalSeminar>("seminarList", seminars){
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;

@ -89,7 +89,7 @@
<span class="box-title">Best rated reviewers</span> <span class="box-title">Best rated reviewers</span>
<div wicket:id="bestRatedPanel" class="append-bottom"></div> <div wicket:id="bestRatedPanel" class="append-bottom"></div>
</div> </div>
<div> <div wicket:id="statsTimespanContainer">
<i><span class="small right">Last 12 months</span></i> <i><span class="small right">Last 12 months</span></i>
</div> </div>
</div> </div>

@ -221,16 +221,23 @@ public class PeerPortalPanel extends Panel {
int displayedReviews = gsettings.getNumberOfLatestReviewsDisplayed(); int displayedReviews = gsettings.getNumberOfLatestReviewsDisplayed();
boolean showStatsTimespan = false;
if(gsettings.isPeerDisplayNumberOfReviewsPerformed()){ if(gsettings.isPeerDisplayNumberOfReviewsPerformed()){
add(new MostFrequentReviewersPanel(mostFrequentPanel)); add(new MostFrequentReviewersPanel(mostFrequentPanel));
showStatsTimespan = true;
} else { } else {
add(new InvisiblePanel(mostFrequentPanel)); add(new InvisiblePanel(mostFrequentPanel));
} }
if( gsettings.isPeerRatingsEnabled() ){ if( gsettings.isPeerRatingsEnabled() ){
add(new WebMarkupContainer(bestRatedContainer).add(new BestRatedReviewersPanel("bestRatedPanel") ) ); add(new WebMarkupContainer(bestRatedContainer).add(new BestRatedReviewersPanel("bestRatedPanel") ) );
showStatsTimespan = true;
} else { } else {
add(new InvisiblePanel(bestRatedContainer)); add(new InvisiblePanel(bestRatedContainer));
} }
WebMarkupContainer statsTimespanContainer = new WebMarkupContainer("statsTimespanContainer");
statsTimespanContainer.setVisible(showStatsTimespan);
add(statsTimespanContainer);
if(gsettings.isPeerDisplayLatestReviews()) { if(gsettings.isPeerDisplayLatestReviews()) {
// Checkbox on the AdminPeerSettingsPage is not visible since it's // Checkbox on the AdminPeerSettingsPage is not visible since it's
// not decided what kind of info that should be public for students. // not decided what kind of info that should be public for students.