Details

    • Sub-task
    • Resolution: Fixed
    • None
    • None
    • TermPortal
    • High
    • Added support for term-level and termEntry-level references to be displayed as grids within right panels, with ability to click-through on such references
    • -

    Description

      The ref-tag on termEntry-level references to the ID of another termEntry. The import maps that, so that in the GUI a click on the reference opens the other entry in the GUI (see TBX_Basic_datacategoriesV23.pdf page 11).

      The analogous behaviour is true for a ref-element on term-level (see page 12).

      List of referenced termEntries should be displayed either under center panel, or under left panel. What should be used as  title for each item in that list? The ideal would be to use term titles for that purpose (as we currently do for left panel search results), but in this case we may not always have a term for current language in the database, so we should use termEntryTbxId for that purpose. Once clicked, center and right panels contents should be reloaded in the same way as if it would be a click on one of the left panel's search result item. But here the question is how to visually indicate the fact that we're (after click on reference) showing contents related to referenced entry rather than search result entry we've clicked previously? One of the suggestions was to prepend/replace term-search top text field's value with something like 'ref:xxxx'.

      The other question is whether new TermPortal should provide an ability to navigate through references as deep as it possible according to references existence, and ability to navigate back, and if yes - how to achieve that. I'm seeing it in the following approach:

      1. Initially, references list will be displayed in the 'Entry attributes' panel.
      2. Once clicked on 1st reference within that list - center and right panels info would be reloaded according to reference that was clicked (including references list, as clicked reference will have it's own references list, even empty)
      3. But, for being able to navigate to 2nd reference for initially clicked search result entry, and to be able to see how deep we have navigated using references, and navigate back to any level - we need to keep somewhere the original references list, and i suggest to display it in the left panel, attached as a child rows under initially clicked left search result row. So each time we go deeper using references - the navigation tree will be shown in left search results grid as child grid-rows.

      UPD:

      1. entry references
        1. entry references list should be displayed as a grid in the 'Entry attributes' panel. The info, displayed for each reference should contain tbx id, language-code, flag and term. Which language should be used?
          1. If referenced entry has the term defined for current term-search language - that term and that language should be used for display by default (after search-result entry was clicked)
          2. If then center-panel grid row was clicked - language of clicked row should be picked and used for request to get fresh references grid, so that terms used to represent the references - should be in that language. If not exists - then in current term-search language, if anyway not exists - then in any other language that exists
        2. What should happen once referenced entry was clicked:
          1. Address in the address bar should look like '#termportal/refEntry/xxx', where xxx - is the tbxId (or our db id?) using window.history.pushState()
          2. Search-term textfield's value should be replaced with refEntry:xxx
          3. Left-panel search-results grid should show only one entry - the referenced entry that was clicked, and status and processStatus columns will be empty. TbxId would be shown instead of term title, trimmed with ellipsis and shown in tooltip if need, in the same way as collection name is shown currently
          4. Center panel and right panels contents should be reloaded as if clicked referenced entry would be the clicked regular search-result entry
      2. Term references
        1. Term references list - should be the grid with tbx id, language-code, flag and term
        2. What should happen once referenced term was clicked:
          1. Address in the address bar should look like '#termportal/refTerm/xxx', where xxx - is the tbxId (or our db id?) using window.history.pushState()
          2. Search-term textfield's value should be replaced with 'refTerm:xxx'
          3. Left-panel search-results grid should show only one entry - the referenced term that was clicked. It is shown in the same way, as if it would be a normal search result.
          4. Center panel and right panels contents should be reloaded as if there would be a click on an entry, that referenced term belongs to.
      3. For being able to go back after navigating to refEntry or refTerm, we should remember the search-term textfield's value that was specified before we clicked on any reference.
        1. So, if we do ordinary search, pushState('#termportal/search/xxx') method should be called, where xxx - is the value of search-term textfield
        2. If we navigated to some reference after that, and then want to go back, we press browser's Back-button. Once pressed, address bar's value will be replaced with '#termportal/search/xxx', and picked by UI, so that xxx should be set as the value of search-term textfield and search-button should be auto-pressed to get back to the initial search results

      Attachments

        Activity

          People

            pavelperminov Pavel Perminov
            marcmittag Marc Mittag [Administrator]
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: