IBM Support

JR54408: Multiple facet selection does not display correctly on the Searc H RESULTS PAGE

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • When using facets on the Search results page with multiple
    facets enabled, the page does not display additional facets
    correctly when a shopper clicks "Show More". There are two
    symptoms:
    1. In some cases, some check boxes do not display for all facet
    values
    2. An empty line is displayed above the 'Show More" check box
    
    This behavior is more likely to occur if you set a maximum
    number of facets to display.
    

Local fix

  • To fix the issues about missing check boxes:
    
    1. Open the
    Widgets/com.ibm.commerce.store.widgets.CatalogEntryList/javascri
    pt/SearchBasedNavigationDisplay.js file.
    2. Find "newFacet.innerHTML" and replace it with the following
    code:
    
     if (!multiFacet) {
     newFacet.innerHTML = "<input type='checkbox' aria-labelledby='"
     + id + "_ACCE_Label' id='" + id + "' value='" + value + "'
    onclick='javascript:
    SearchBasedNavigationDisplayJS.toggleSearchFilter(this, \"" + id
     + "\")'/>" + facetLabel;
    }
    else {
     newFacet.innerHTML = "<input tabindex='-1' type='checkbox'
    class='nodisplay' aria-labelledby='" + id + "_ACCE_Label' id='"
    + id + "' value='" + value +"'" +
       " onclick='if(this.disabled ==
    false){if(this.checked){dojo.topic.publish(\"Facet_Add\", \"" +
    id + "\");}else{dojo.topic.publish(\"Facet_Remove\", \"" + id +
    "\");}}else{this.checked = false};'" +
       " onkeypress='if(event.keyCode == dojo.keys.ENTER)
    {this.checked=!this.checked;if(this.checked){dojo.topic.publish(
    \"Facet_Add\", \"" + id +
    "\");}else{dojo.topic.publish(\"Facet_Remove\", \"" + id +
    "\");}}'></input>" +
       "<a role='checkbox' aria-labelledby='" + id + "_ACCE_Label'
    id='facetButton" + id.replace(' ', '_') + "' class='facetbutton'
     href='#' data-for='" + id + "'
    onclick='javascript:setCurrentId('" + id + "');>" +
       "<span class='spanacce'><label for='" + id + "'
    aria-label='checkbox'>" + label + "</label></span>" +
       "<div class='checkBox'>" +
       "<div class='checkmark'></div>" +
       "</div>" +
       "</a>" +
       facetLabel;
    }
    
    
    
    To remove the empty line above the "Show More" check box:
    
    1. Open the
    Widgets/com.ibm.commerce.store.widgets.FacetNavigation/FacetNavi
    gation_VerticalView_UI.jspf file.
    
    2. Find the following code:
    
    <c:if test="${facetList[4] == false}">
        <ul class="facetSelect" id="more_<c:out
    value='${facetSection}' escapeXml='false'/>"><li><div
    class="clear_float"></div></li></ul>
        <div class="showMore" id="morebutton_<c:out
    value='${facetSection}' escapeXml='false'/>">
            <input title="MORE" type="checkbox"
    aria-labelledby="showMoreLabel_${facetSection}"
    id="morelink_${facetSection}" name="morelink_${facetSection}"
    value="<c:out value='${facetSection}' escapeXml='false'/>:-1"
    onclick="java?script:
    SearchBasedNavigationDisplayJS.toggleShowMore(this, '<c:out
    value='${facetSection}' escapeXml='false'/>');"/>
            <label for="morelink_${facetSection}"
    id="showMoreLabel_${facetSection}">
                <fmt:message key="LN_SEARCH_FACET_SHOW_ALL"
    bundle="${widgetText}"/>
            </label>
        </div>
    </c:if>
    
    3. Remove the following line:
    
     <ul class="facetSelect" id="more_<c:out value='${facetSection}'
     escapeXml='false'/>"><li><div
    class="clear_float"></div></li></ul>
    

Problem summary

  • USERS AFFECTED:
    WebSphere Commerce V7 releases with multiple facets enabled
    
    PROBLEM ABSTRACT:
    Multiple facet selection does not display correctly on the
    Search results page
    
    BUSINESS IMPACT:
    Multiple facet function might not work or display properly on
    the Search results page.
    
    RECOMMENDATION:
    

Problem conclusion

  • When you select the "Show More" check box, a request is made to
    retrieve the additional facets.  The HTML for the additional
    facets is injected into the DOM by using Javascript.  This fix
    corrects the injected HTML to match the facets that are already
    present upon page load.
    

Temporary fix

Comments

APAR Information

  • APAR number

    JR54408

  • Reported component name

    WC BUS EDITION

  • Reported component ID

    5724I3800

  • Reported release

    700

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    YesSpecatt / Pervasive

  • Submitted date

    2015-09-30

  • Closed date

    2015-11-16

  • Last modified date

    2015-12-14

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    WC BUS EDITION

  • Fixed component ID

    5724I3800

Applicable component levels

  • R700 PSY

       UP

[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSYSYL","label":"WebSphere Commerce Enterprise"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.0","Line of Business":{"code":"LOB31","label":"WCE Watson Marketing and Commerce"}}]

Document Information

Modified date:
11 December 2021