Forum Discussion
apm_mobile css file not used on in app browsers
There is a session variable that's set when the user connects It's basically a logic decision based on the combination of the HTTP POST information and User-Agent that begins the connection.
Then there is a PHP switcher for delivering whatever CSS version (/var/sam/www/php_include/webtop/renderer/customization/general_ui/default_general_ui/en/apm.css):
Don't edit that file because your changes will be destroyed on any upgrade.
The logic looks like this:
$name = "apm_full.css";
switch( $_GET["uimode"] ){
case 7: if( $_GET["cplatform"] == "MacOS" ){ $name = "apm_edge.css"; } break;
case 9: $name = "apm_mobile.css"; break;
}
include( $name );
"uimode" is set to those numbers depending on a combination of the user agent and any POST data received.
- ascherer_304302Dec 28, 2016Nimbostratus
Is it possible with an irule to write to this uimode so if the user-agent contains the app name it would be set to 9 ?
Something like:
if {[HTTP::header User-Agent] contains "(iOS) xxxx-iOS" } { //force ui mode to 9 log local0. "Connection from xxxx app detected" }
- Lucas_Thompson_Dec 28, 2016Historic F5 Account
I don't think so, but you can give it a shot.
This issue sounds like a defect. User-Agent strings are always changing and unfortunately APM doesn't have a dynamically configurable map of what user-agent matches what uimode/etc. This feature has been (and continues to be) requested in different use cases.
- ascherer_304302Dec 29, 2016Nimbostratus
I've looked around and it seems like I'm not able to access the session variables from an irule
Since the app that is opening the login is a branded one we can manipulate the the User Agent string. Do you know what specific the logic switch is looking at ? Then it would be possible to manipulate either the http post values or the user agent string
Thanks
- Lucas_Thompson_Dec 29, 2016Historic F5 Account
Let's get a support ticket opened for this one so that the issue can be fully characterized. With this detailed understanding of the problem, it will be easy for support to help. Just be sure to provide the exact User-Agent and what the uimode session variable gets set to.
You can access (read) the session variables from an irule as long as they exist, but there are some gotchas with writing them depending on the specific time you're doing it and for what purpose.
Recent Discussions
Related Content
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com