Merge r7827 from nihvivo-rel-1.2-maint branch: fix display of classgroups with no public name on index and home pages.
This commit is contained in:
parent
78c3294102
commit
1e03e2b5a8
5 changed files with 38 additions and 33 deletions
|
@ -174,7 +174,6 @@ public class BrowseDataGetter implements PageDataGetter {
|
|||
map.put("classes", classes);
|
||||
|
||||
map.put("classGroup", new VClassGroupTemplateModel(vcg));
|
||||
map.put("classGroupName", vcg.getPublicName());
|
||||
map.put("classGroupUri", vcg.getURI());
|
||||
|
||||
return map;
|
||||
|
|
|
@ -3,9 +3,9 @@
|
|||
package edu.cornell.mannlib.vitro.webapp.web.templatemodels;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
|
||||
|
@ -43,6 +43,15 @@ public class VClassGroupTemplateModel extends BaseTemplateModel {
|
|||
return vClassGroup.getPublicName();
|
||||
}
|
||||
|
||||
// Protect the template against a group without a name.
|
||||
public String getDisplayName() {
|
||||
String displayName = getPublicName();
|
||||
if (StringUtils.isBlank(displayName)) {
|
||||
displayName = getLocalName().replaceFirst("vitroClassGroup", "");
|
||||
}
|
||||
return displayName;
|
||||
}
|
||||
|
||||
public List<VClassTemplateModel> getClasses() {
|
||||
if (classes == null) {
|
||||
List<VClass> classList = vClassGroup.getVitroClassList();
|
||||
|
|
|
@ -8,27 +8,24 @@
|
|||
<section class="siteMap" role="region">
|
||||
<div id="isotope-container">
|
||||
<#list classGroups as classGroup>
|
||||
<#-- Only render classgroups that have at least one class with individuals -->
|
||||
<#-- Only render classgroups that have at least one populated class -->
|
||||
<#if (classGroup.individualCount > 0)>
|
||||
<#if classGroup.publicName?has_content>
|
||||
<div class="class-group">
|
||||
<h2>${classGroup.publicName}</h2>
|
||||
</#if>
|
||||
<h2>${classGroup.displayName}</h2>
|
||||
<ul role="list">
|
||||
<#list classGroup.classes as class>
|
||||
<#-- Only render classes with individuals -->
|
||||
<#-- Only render populated classes -->
|
||||
<#if (class.individualCount > 0)>
|
||||
<li role="listitem"><a href="${class.url}">${class.name}</a> (${class.individualCount})</li>
|
||||
</#if>
|
||||
</#list>
|
||||
</ul>
|
||||
</div>
|
||||
</div> <!-- end class-group -->
|
||||
</#if>
|
||||
</#list>
|
||||
</div> <!-- end isotope-container -->
|
||||
</section>
|
||||
|
||||
|
||||
${headScripts.add('<script type="text/javascript" src="${urls.base}/js/jquery_plugins/isotope/jquery.isotope.min.js"></script>')}
|
||||
<script>
|
||||
$('#isotope-container').isotope({
|
||||
|
|
|
@ -24,7 +24,7 @@ ${stylesheets.add('<link rel="stylesheet" href="${urls.base}/css/browseClassGrou
|
|||
<#elseif classGroup.uri == group.uri>
|
||||
<#assign activeGroup = selected />
|
||||
</#if>
|
||||
<li role="listitem"><a ${activeGroup}href="${urls.currentPage}?classgroupUri=${group.uri?url}#browse" title="Browse ${group.publicName?capitalize}" data-uri="${group.uri}" data-count="${group.individualCount}">${group.publicName?capitalize} <span class="count-classes">(${group.individualCount})</span></a></li>
|
||||
<li role="listitem"><a ${activeGroup}href="${urls.currentPage}?classgroupUri=${group.uri?url}#browse" title="Browse ${group.displayName?capitalize}" data-uri="${group.uri}" data-count="${group.individualCount}">${group.displayName?capitalize} <span class="count-classes">(${group.individualCount})</span></a></li>
|
||||
</#if>
|
||||
</#list>
|
||||
</#assign>
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
<ul id="browse-classgroups" role="list">
|
||||
<#list vclassGroupList as group>
|
||||
<#if (group.individualCount > 0)>
|
||||
<li role="listitem"><a href="${urls.currentPage}?classgroupUri=${group.uri?url}">${group.publicName?capitalize} <span class="count-classes">(${group.individualCount})</span></a></li>
|
||||
<li role="listitem"><a href="${urls.currentPage}?classgroupUri=${group.uri?url}">${group.displayName?capitalize} <span class="count-classes">(${group.individualCount})</span></a></li>
|
||||
</#if>
|
||||
</#list>
|
||||
</ul>
|
||||
|
@ -48,7 +48,7 @@
|
|||
<section id="browse" role="region">
|
||||
<h4>Browse</h4>
|
||||
<div>
|
||||
vclass ${class.name} from ${classGroup.publicName}
|
||||
vclass ${class.name} from ${classGroup.displayName}
|
||||
This has classGroup, classes, individualsInClass and class.
|
||||
</div>
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue