Uploaded image for project: 'Nuxeo Elements'
  1. Nuxeo Elements
  2. ELEMENTS-1707

Fix selection of columns in a Table view when the columns have changed

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 3.0.0
    • Fix Version/s: 3.0.30, 3.1.5
    • Component/s: Actions, UI
    • Release Notes Summary:
      Columns in a table view are correctly selected when the columns have changed.
    • Backlog priority:
      700
    • Sprint:
      UI - 2023-11, UI COOLDOWN - 2023-11, UI COOLDOWN - 2023-13, UI - 2023-13
    • Story Points:
      5

      Description

      Steps to reproduce:

      1. deploy the attached jar webui-1283.jar to $NUXEO/nxserver/bundles
      2. log in as Administrator
      3. navigate to your personal workspace
      4. Press the + button and choose ProdFolder
      5. Set a title and create the document
      6. Press the + button and choose Produit
      7. Set a title, click on the Add button, fill all the fields (Classe, Initiator, Region, Branch, Status) and create the document
      8. Navigate back to the ProdFolder document
      9. Observe that 4 columns are displayed : Title, Modified, Last Contributor and InternalClass1
      10. Click on the Settings icon and add the State column. Click on Done. Now you have 5 columns
      11. Modify the file $NUXEO/nxserver/nuxeo.war/ui/document/prodfolder/nuxeo-prodfolder-view-layout.html with the content of the attached file nuxeo-prodfolder-view-layout.html => it adds more columns to this view and it simulates the fact that some developments will bring more columns to a Table view
      12. Force the reload of the page
      13. You should now see 6 columns : internalClass2 is added <= this sounds like the expected behavior because we have the 5 selected columns plus the new one which is not hidden by default
      14. Click on the Settings icon and uncheck all columns but Title
      15. Observe that only 1 column (Title) is now displayed
      16. Force the refresh of the page
      17. Observe that you still have 6 columns in the table

      Go to the Console and see this error

      Uncaught TypeError: e.columns[(intermediate value)] is undefined
          29145/set settings/< http://localhost:8080/nuxeo/ui/main.bundle.js:3884
          set settings http://localhost:8080/nuxeo/ui/main.bundle.js:3884
          restoreSettings http://localhost:8080/nuxeo/ui/main.bundle.js:2168
          r http://localhost:8080/nuxeo/ui/main.bundle.js:13271
          fire http://localhost:8080/nuxeo/ui/main.bundle.js:13271
          _load http://localhost:8080/nuxeo/ui/main.bundle.js:10554
          reload http://localhost:8080/nuxeo/ui/main.bundle.js:10554
          _timer http://localhost:8080/nuxeo/ui/main.bundle.js:13271
          16896 http://localhost:8080/nuxeo/ui/main.bundle.js:13271
          16896 http://localhost:8080/nuxeo/ui/main.bundle.js:13271
          __webpack_require__ http://localhost:8080/nuxeo/ui/main.bundle.js:13271
          20672 http://localhost:8080/nuxeo/ui/main.bundle.js:13271
          __webpack_require__ http://localhost:8080/nuxeo/ui/main.bundle.js:13271
          43584 http://localhost:8080/nuxeo/ui/main.bundle.js:13271
          __webpack_require__ http://localhost:8080/nuxeo/ui/main.bundle.js:13271
          46674 http://localhost:8080/nuxeo/ui/main.bundle.js:13271
          __webpack_require__ http://localhost:8080/nuxeo/ui/main.bundle.js:13271
          30818 http://localhost:8080/nuxeo/ui/main.bundle.js:13271
          __webpack_require__ http://localhost:8080/nuxeo/ui/main.bundle.js:13271
          79193 http://localhost:8080/nuxeo/ui/main.bundle.js:13271
          __webpack_require__ http://localhost:8080/nuxeo/ui/main.bundle.js:13271
          36037 http://localhost:8080/nuxeo/ui/main.bundle.js:2747
          __webpack_require__ http://localhost:8080/nuxeo/ui/main.bundle.js:13271
          587 http://localhost:8080/nuxeo/ui/main.bundle.js:2718
          __webpack_require__ http://localhost:8080/nuxeo/ui/main.bundle.js:13271
          54398 http://localhost:8080/nuxeo/ui/main.bundle.js:2747
          __webpack_require__ http://localhost:8080/nuxeo/ui/main.bundle.js:13271
          <anonymous> http://localhost:8080/nuxeo/ui/main.bundle.js:13271
          <anonymous> http://localhost:8080/nuxeo/ui/main.bundle.js:13271
          <anonymous> http://localhost:8080/nuxeo/ui/main.bundle.js:13271
      main.bundle.js:3884:5458
      

       
      Expected behavior: the new selected columns should be correctly stored to the local storage and the Table view should display the selected columns only

      The implementation may require to detect that the amount of columns in the Table view has changed, hence setting new columns should clear the local storage

        Attachments

          Issue Links

            Activity

              People

              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: