HCL Commerce Enterprise

Enabling guest browsing and shopping for the Aurora starter store

In the Aurora starter store, you can enable guest browsing and shopping for B2B customers. The steps involve enabling the related policies in the Organization Administration Console and modifying a store configuration file. You can then verify that guest browsing and shopping are enabled by browsing the store catalog and placing an order as a guest customer.

  • When guest browsing is enabled, customers who are not signed in can view the catalog and the default contract prices for the store. However, these customers cannot add items to their current order or place an order. By default, guest browsing is enabled in the Aurora starter store.
  • When guest shopping is enabled, customers who are not signed in can add items to their current order and place an order. The customer pays the default contract prices. By default, guest shopping is not enabled in the Aurora starter store.

Procedure

  1. Open the Organization Administration Console.
  2. Click Access Management > Find Organizations.
  3. Find the organization that owns the store for which you are enabling guest and browsing and shopping. For an extended site, select the organization that owns the extended site store.
  4. Select the check box beside the organization.
  5. Click Policy Subscription.
  6. Enable guest browsing:
    Important: By default, guest browsing is enabled for the Aurora starter store. Complete the following substeps only if guest browsing is disabled, otherwise, go to step 7.
    1. In the Available policy groups section, select store_name GuestCatalogEnabledPolicyGroup, where store_name is the name of your published store.
      For example, if the store name is AuroraB2B, select AuroraB2B GuestCatalogEnabledPolicyGroup.
    2. Click Add, and then click OK.
    3. Do one of the following things:
      • If you are also enabling guest shopping, go to step 7.
      • If you are enabling only guest browsing, complete these steps:
        1. Stop the serverStop the server.
        2. Start the serverStart the server.
        3. Go to step 10.
  7. Enable guest shopping:
    1. In the Available policy groups section, select store_name GuestShoppingEnabledPolicyGroup, where store_name is the name of your published store.
      For example, if the store name is AuroraB2B, select AuroraB2B GuestShoppingEnabledPolicyGroup.
    2. Click Add, and then click OK.
    3. Stop the server.
    4. Go to the following directory:
      • HCL Commerce Developerworkspace_dir/Stores/WebContent/WEB-INF/
    5. Back up the struts-config-ext.xml file.
    6. Open the struts-config-ext.xml file in an editor.
    7. Find the section in the file that contains this line of code:
      path="/QuickOrderView"
    8. For the lines labeled 1 and 2 in the following code snippet, change the authenticate property value for your store from 1 to 0, as shown. The store ID is 10001 in this example:
      <action path="/QuickOrderView" type="com.ibm.commerce.struts.BaseAction">
         <set-property property="credentialsAccepted" value="10001:P"/>
      1<set-property property="authenticate" value="10001:0"/>
      </action>
      <action path="/AjaxOrderItemDisplayView" type="com.ibm.commerce.struts.BaseAction">
         <set-property property="https" value="10001:1"/>
         <set-property property="credentialsAccepted" value="10001:P"/>
      2<set-property property="authenticate" value="10001:0"/>
      </action>
    9. Find the section in the file that contains this line of code:
      path="/AjaxRESTOrderItemAdd"
    10. For each of the lines that are labeled 1 to 8 in the following code snippet, change the authenticate property value for your store from 1 to 0, as shown. The store ID is 10001 in this example:
      <action parameter="orderlist.addOrderItem" path="/AjaxRESTOrderItemAdd" type="com.ibm.commerce.struts.AjaxRESTAction">
      1<set-property property="authenticate" value="10001:0"/>
         <set-property property="https" value="10001:1"/>
      </action>
      <action parameter="orderlist.addOrderItem" path="/RESTOrderItemAdd" type="com.ibm.commerce.struts.RESTAction">
      2<set-property property="authenticate" value="10001:0"/>
         <set-property property="https" value="10001:1"/>
      </action>
      ...
      <action parameter="orderlist.calculateOrder" path="/AjaxRESTOrderCalculate" type="com.ibm.commerce.struts.AjaxRESTAction">
      3<set-property property="authenticate" value="10001:0"/>
         <set-property property="https" value="10001:1"/>
      </action>
      <action parameter="orderlist.calculateOrder" path="/RESTOrderCalculate" type="com.ibm.commerce.struts.RESTAction">
      4<set-property property="authenticate" value="10001:0"/>
         <set-property property="https" value="10001:1"/>
      </action>
      <action parameter="orderlist.addConfigurationToCart" path="/AjaxRESTOrderAddConfigurationToCart" type="com.ibm.commerce.struts.AjaxRESTAction">
      5<set-property property="authenticate" value="10001:0"/>
          <set-property property="https" value="10001:1"/
      </action>
      <action parameter="orderlist.addConfigurationToCart" path="/RESTOrderAddConfigurationToCart" type="com.ibm.commerce.struts.RESTAction">
      6<set-property property="authenticate" value="10001:0"/>
          <set-property property="https" value="10001:1"/>
      </action>
      <action parameter="orderlist.addPreConfigurationToCart" path="/AjaxRESTOrderAddPreConfigurationToCart" type="com.ibm.commerce.struts.AjaxRESTAction">
      7<set-property property="authenticate" value="10001:0"/>
          <set-property property="https" value="10001:1"/>
      </action>
      <action parameter="orderlist.addPreConfigurationToCart" path="/RESTOrderAddPreConfigurationToCart" type="com.ibm.commerce.struts.RESTAction">
      8<set-property property="authenticate" value="10001:0"/>
          <set-property property="https" value="10001:1"/>
      </action>
    11. Save the file.
    12. Deploy the store assets.
    13. Start the server.
  8. Enable guest shopping:
    1. In the Available policy groups section, select store_name GuestShoppingEnabledPolicyGroup, where store_name is the name of your published store.
      For example, if the store name is AuroraB2B, select AuroraB2B GuestShoppingEnabledPolicyGroup.
    2. Click Add, and then click OK.
    3. Stop the server.
    4. Back up the WCStore_Server_dir/crs-custom-web/WEB-INF/spring/storedir/views-ext.xml configuration file.
    5. Open the views-ext.xml file in an editor.
    6. Find the associated bean definitions for the specific store you want to enable guest browsing and shopping for by finding the associated entries:
      <bean id="QuickOrderView/storedir"
          class="com.ibm.commerce.store.mvc.view.spring.StoreInternalResourceView">
    7. Change the authenticate property value for your store from 1 to 0, as shown in this example:
      <bean id="QuickOrderView/AuroraB2BStorefrontAssetStore"
          class="com.ibm.commerce.store.mvc.view.spring.StoreInternalResourceView">
        <property name="url"
          value="/ShoppingArea/OrderCreationSection/QuickOrderSubsection/QuickOrderForm.jsp"/>  
        <property name="credentialsAccepted" value="P"/>
        <property name="authenticate" value="0"/>
      </bean>
      <bean id="AjaxOrderItemDisplayView/AuroraB2BStorefrontAssetStore"
        class="com.ibm.commerce.store.mvc.view.spring.StoreInternalResourceView">
        <property name="url" value="/ShoppingArea/ShopcartSection/OrderItemDisplay.jsp"/>
        <property name="https" value="1"/>
        <property name="credentialsAccepted" value="P"/>
        <property name="authenticate" value="0"/>
        <property name="generic"value="1"/>
      </bean>
    8. Save the file.
    9. Back up the WCStore_Server_dir/crs-custom-web/WEB-INF/spring/storedir/controllers-ext.xml configuration file.
    10. Open the controllers-ext.xml file in an editor.
    11. Find the associated bean definitions for the specific store you want to enable guest browsing and shopping for by finding the associated entries:
       <bean id="orderCalculate/storedir"
        class="com.ibm.commerce.store.mvc.controller.spring.RESTActionController">
    12. Change the authenticate property value for your store from 1 to 0, as shown in this example:
      <bean id="orderCalculate/AuroraB2BStorefrontAssetStore" 
        class="com.ibm.commerce.store.mvc.controller.spring.RESTActionController">
        <property name="authenticate" value="0"/>
        <property name="https" value="1"/>
        <property name="parameter" value="orderlist.calculateOrder"/>
      </bean>
      <bean id="ajaxRESTOrderCalculate/AuroraB2BStorefrontAssetStore"
        class="com.ibm.commerce.store.mvc.controller.spring.AjaxRESTActionController">
        <property name="authenticate" value="0"/>
        <property name="https" value="1"/>
        <property name="parameter" value="orderlist.calculateOrder"/>
       </bean>
      <bean id="ajaxOrderItemAdd/AuroraB2BStorefrontAssetStore"
        class="com.ibm.commerce.store.mvc.controller.spring.AjaxRESTActionController">
        <property name="authenticate" value="0"/>
        <property name="parameter" value="orderlist.addOrderItem"/>
        <property name="https" value="1"/>
      </bean>
    13. Save the file.
    14. Deploy the store assets.
    15. Start the .
  9. If you want to enable customer service representatives to browse and shop on behalf of guests, update your CustomerServiceNavigation_UI.jspf file.
    1. Stop the server.
    2. Open the following file in an editor:
      • LinuxWC_installdir/wc.ear/Stores.war/Widgets_701/com.ibm.commerce.store.widgets.csr.CustomerServiceNavigation/CustomerServiceNavigation_UI.jspf
      • HCL Commerce Developerworkspace_dir/Stores/WebContent/Widgets_701/com.ibm.commerce.store.widgets.csr.CustomerServiceNavigation/CustomerServiceNavigation_UI.jspf
    3. Comment out the following condition:
      <c:if test="${env_b2bStore != 'true'}">
                CSR cannot shop as guest user in B2B Store
                <li>
                       <a href="#" onClick = "javascript:registeredCustomersJS.createGuestUser()" 
                         class="link" id="createGuestUser"><wcst:message key="MA_SHOP_AS_GUEST" bundle="${widgetText}"/></a>
                </li>
      </c:if>
    4. Save and close the file.
    5. Deploy the store assets.
    6. Start the server.
    7. Verify that a customer service representative can browse and shop on behalf of a guest.
  10. Verify that guest browsing, or guest shopping, or both, are enabled.
    1. Open the Aurora starter store in a browser but do not sign in.
    2. To verify that guest browsing is enabled, ensure that you can browse the store catalog and view products and their prices from the store's default contract.
    3. To verify that guest shopping is enabled, ensure that you can add items to the current order and check out.