Kuali Rice Development
  1. Kuali Rice Development
  2. KULRICE-7115

Add "listContains" and "emptyList" functionality to the subset of SpringEL supported by serer and client-side features

    Details

    • Type: Improvement Improvement
    • Status: Closed Closed
    • Priority: Critical Critical
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.2.0-rc1, 2.2
    • Component/s: Development
    • Security Level: Public (Public: Anyone can view)
    • Labels:
      None
    • Similar issues:
      KULRICE-8629Document listContains and emptyList EL functions
      KULRICE-10049Client-Side disable not working with Coll. SpringEL Functions
      KULRICE-7004Provide option of rendering components client side
      KULRICE-10054SpringEL for disable client-side is broken
      KULRICE-8627Document client side disable functionality
      KULRICE-14261Enable client side validation in dialogs (backport KULRICE-12235)
      KULRICE-4724Client side table sorting, paging
      KULRICE-7562Improve subset of SpringEL - that we convert for specific functionality to js - by allowing a contains (or similar) operation
      KULRICE-4708Support for client side field validation
      KULRICE-11327SpringEL is not supported for constraints in KRAD
    • Rice Module:
      KRAD
    • Application Requirement:
      KS My Plan
    • KAI Review Status:
      Not Required
    • KTI Review Status:
      Not Required

      Description

      Add "contains" functionality to the subset of SpringEL supported in progressive and refresh cases.

      From KRAD user group discussion:

      Had a bit of a discussion off the list on this with Garett. Jerry, if
      you remember, we are using a subset of SpringEL for progressive and
      refresh conditionals because of the limitations we have in converting it
      to a condition in Javascript (basically we cant support any method call
      you want). The workaround solution I suggested is to use the render
      property on the group we want progressively disclosed in this case and
      set it to "@{termsList.contains('other')" but also set its
      refreshWhenChanged property pointing back to the checkboxGroup. In this
      way, when that field is changed it should fire an ajax call to the
      server to refresh the group when the user makes a selection and render
      (or unrender the group). The downside to this is that it will fire it
      for every change rather than the single change we are looking for.

      I am suggesting that we file an enhancement request to add the contains
      functionality to the subset of SpringEL we support in progressive and
      refresh cases.

      Thanks,

      Brian Smith

      This jira was also modified to add the emptyList feature to it.

        Activity

        Hide
        Jessica Coltrin (Inactive) added a comment -

        Assigning to 2.2 for review by DMs.

        Show
        Jessica Coltrin (Inactive) added a comment - Assigning to 2.2 for review by DMs.
        Hide
        Jessica Coltrin (Inactive) added a comment -

        moving non-blocker and non-critical m4 Jiras to 2.2-backlog

        Show
        Jessica Coltrin (Inactive) added a comment - moving non-blocker and non-critical m4 Jiras to 2.2-backlog
        Hide
        Brian Smith (Inactive) added a comment - - edited

        You now have the ability to call #listContains(list, 'value') and #listContains(list,

        {'value1', 'value2'}

        ) in all SpringEL expressions. You can also use numeric values if you have a numeric list. If the the list is one of Objects, it will use the object's toString function for comparison. #emptyList function was also added called by #emptyList(list). These functions work for both server and client evaluations!

        Show
        Brian Smith (Inactive) added a comment - - edited You now have the ability to call #listContains(list, 'value') and #listContains(list, {'value1', 'value2'} ) in all SpringEL expressions. You can also use numeric values if you have a numeric list. If the the list is one of Objects, it will use the object's toString function for comparison. #emptyList function was also added called by #emptyList(list). These functions work for both server and client evaluations!

          People

          • Assignee:
            Brian Smith (Inactive)
            Reporter:
            Garett Gowens
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Structure Helper Panel