If a page has not been refreshed in a while, the items in the presented list could be gone from the backend. On some pages it's unclear what happened when you click on such item. It would be nice if all pages at least showed some message that the item you clicked is no longer available. Bellow is a inventory of the current state of the pages: /status/load ════════════ In 4.14.0 there were no details that could be shown. But now (build 3093) you will get an error message "Agent XXX is no longer available" on the base page. /status/sessions ════════════════ In 4.14.0 nothing happens. You are silently returned to the basepage that will show the current available sessions. This has been updated now (build 3093) and you get an error message "Session is not available" in the popup and the values are N/A and save and delete are grayed out. /vsm/subclusters ════════════════ In 4.14.0 nothing happens. You are silently returned to the basepage. This has been worsened now (build 3093). You are now presented with a popup with the name that you clicked on but all fields are empty. It is saved as a new entry. This will hopefully be fixed when bug 8075 is done. /profiles/profilelist ═════════════════════ Both in 4.14.0 and now nothing happens. You are silently returned to the basepage. /locations/locations ════════════════════ Both in 4.14.0 and now nothing happens. You are silently returned to the basepage. /locations/terminals ════════════════════ Both in 4.14.0 and now nothing happens. You are silently returned to the basepage. /desktop/appgroups ══════════════════ Both in 4.14.0 and now the same happens. You are presented with a popup with the name that you clicked on, but all fields are empty. It is saved as a new entry. /desktop/manapplications ════════════════════════ Both in 4.14.0 and now the same happens. It crashes the page. See bottom of this description. /desktop/menustructure ══════════════════════ Both in 4.14.0 and now the same happens. You get an error message on the basepage that says "No such menu" > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] ---------------------------------------- > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] Exception happened during processing of request from ('::1', 58180, 0, 0) > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] Traceback (most recent call last): > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] File "/opt/thinlinc/modules/thinlinc/forkingserver.py", line 62, in process_request > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] self . finish_request ( request , client_address ) > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] File "/opt/thinlinc/modules/thinlinc/httpserver.py", line 407, in finish_request > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] super ( ) . finish_request ( request , client_address ) > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] File "/opt/thinlinc/modules/thinlinc/tlstunnel.py", line 71, in finish_request > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] self . TLSRequestHandlerClass ( request , client_address , self ) > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] File "/opt/thinlinc/modules/thinlinc/httpserver.py", line 78, in __init__ > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] super ( ) . __init__ ( request , client_address , server ) > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] File "/usr/lib64/python3.10/socketserver.py", line 747, in __init__ > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] self.handle() > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] File "/opt/thinlinc/modules/thinlinc/httpserver.py", line 380, in handle > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] super ( ) . handle ( ) > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] File "/usr/lib64/python3.10/http/server.py", line 433, in handle > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] self.handle_one_request() > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] File "/opt/thinlinc/modules/thinlinc/httpserver.py", line 155, in handle_one_request > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] super ( ) . handle_one_request ( ) > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] File "/usr/lib64/python3.10/http/server.py", line 421, in handle_one_request > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] method() > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] File "/opt/thinlinc/modules/thinlinc/tlwebadm/server.py", line 161, in do_GET > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] self . post_or_get ( "do_GET" , II1iiii ) > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] File "/opt/thinlinc/modules/thinlinc/tlwebadm/server.py", line 175, in post_or_get > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] OooO0O00o0 , OOo = getattr ( IIiII11I , action ) ( I11ii1IiIii , query , OooO0O00o0 ) > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] File "/opt/thinlinc/modules/thinlinc/tlwebadm/main.py", line 133, in do_GET > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] self . _GET_METHODS . get ( page_name , self . error_404 ) ( query ) ) > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] File "/opt/thinlinc/modules/thinlinc/tlwebadm/desktop.py", line 84, in manapplications > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] return self . _applications ( query , sysapps = False ) > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] File "/opt/thinlinc/modules/thinlinc/tlwebadm/desktop.py", line 127, in _applications > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] i1iiiiIIIiIi [ 'details' ] = self . _get_application_details ( query , > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] File "/opt/thinlinc/modules/thinlinc/tlwebadm/desktop.py", line 325, in _get_application_details > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] Iii1I1I1 = ii1Iii . getExecArgv ( ) > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] AttributeError: 'NoneType' object has no attribute 'getExecArgv' > 2023-02-28 12:37:13 ERROR tlwebadm[2085998]: [::1] ----------------------------------------
The desired behaviour should be that the pop-up is shown with some form of error. This is to meet the user's expectation that clicking on these links will show a pop-up with details about the specified object.