Hi all
we are looking for a way to open a link in another tab. Vi can easily change to the correct tab by calling SuperOffice.ClientCrossMessaging.executeSoProtocol("project."+tab+"?project_id="+id); but we can't find a way to specify the URL to open.
I fairly sure this was possible in the windows version.
All Replies (3)
HI Inge!
Using cross messaging you are calling from a web panel, and issuing an soprotocol as such is meant to navigate within SuperOffice. If you know what tabs are open and want to target a specific browser tab, then suggest you avoid using cross messaging for this, and use standard html anchor tag logic to open the correct, or just open a new tab - again using anchor tags.
If by tabs, you mean views (which show up as tabs controls inside SuperOffice) then you can specify them already. See the navigation targets in the documentation.
Thanks Tony, but that does't solve our current problem.
When I said tab, I meant SO web panels, not browser tabs. My bad :) When we want to open the URL i a browser tab, everything is easy.
And use cross messaging a lot, of course, it works great to select the proper contact (in this case), and the proper webpanel.
But what we need to do is to navigate to the proper contact, switch to the proper web panel, and the open URL.
Something like this: SuperOffice.ClientCrossMessaging.executeSoProtocol("contact.gadgettab?index.php?gadget_id=4711);
Hi Inge!
OK, so soprotocol is used as a means to perform navigation in SuperOffice. It does not support passing extra parameters other than known currents, i.e. contact_id=2, project_id=2, etc.
The last example provided targets a web panel with extra unknown parameters. As you know, but for those who do not, a web panel is an pre/defined iFrame in the Web Panel list, with a PRE_DEFINED URL and query string parameters. We support template variables as values for those known template variables, which also generally map to known currents.
What you are seeking is something other than the built-in / supported mechanisms. Perhaps a feature wish?
One way you could perform such a mechanism is to use the API to change the web panel URL, and then issue the soprotocol to simply "contact.gadgettab" and it would navigate to where you set in the previous update. Of course, this is global and would affect ALL users.
Alternatively, you could use known template variables and pass that into the sprotocol string, which should then be respected by the web panel definition and populated and sent to your pre-defined url accordingly. There are other mechanisms, such as Foreign Keys, that you could use associate with said project_id and link it up before the invocation and handle it in the destination page accordingly.
Best regards.