I found the two functions to rbf_showOrHideSection and rbf_showOrHideSectionField, but no similar function for tabs? Also just noticed the "rbf_showOrHideField" is "deprecated" because it might not work. When in the release cycle are deprecated methods typically removed? Is there any chance this feature might be fixed instead of removed?
I'll add rbf_showOrHideTab to my queue targeting 3.9.3 release (release 3.9.2 is coming out on Jan 12).
- we have no plans to remove it since many customers keep using this API
- we found that due to HTML structure used (TD, TR) there is no reliable cross-browser way to hide and show again content of cells. It is possible, but results may be ugly. I'll check with Matt, may be new UI will change that.
Thanks, Pavel, that would be great!
I understand that you want to customize page's appearance based on record's data. I think better approach would be to have server-side formulas to show/hide particular tab rather than do it from client side. What do you think?
Yes. I was thinking about server-side ways to do this too, but it's not easy to say only client or only server side.
Server-side would work for View -- because the value of the related field is fixed. (ex. if Engagement.etype == "A" then do not show TabB) There would be no need to send down the tab or run the "hide" JS f(n) which I've seen flicker the UI on the browser.
But, for a form where user can select Engagement.etype "A" or "B" or "C"... the client-side flexibility to show/hide different fields and/or tabs is good. (The alternative of a server trip on every change of the select seems like a less optimal UX.)
That said, duplicating the logic for View and Edit (described in this topic: https://getsatisfaction.com/rollbase/topics/what_is_the_best_way_to_hide_show_a_section_based_on_the_value_of_a_field) could perhaps be improved.
What if the tab, field, section were wired together with EventListeners?
The EType field onChange could fire events, and EType View object could add events to a
Matt is working on API and UI improvements to enable tabs hiding.