is this possible in Matrix? I've had a bit of a trawl around and can find no answers…
I just want to build one site and automagically apply different designs based on broad browser types [desktop|ipod|phone] - ideally allowing users to override the automatic setting.
Can anyone share the magic with me? 
[quote]is this possible in Matrix? I've had a bit of a trawl around and can find no answers…
I just want to build one site and automagically apply different designs based on broad browser types [desktop|ipod|phone] - ideally allowing users to override the automatic setting.
Can anyone share the magic with me? :-)[/quote]
If you want to override, you may be best off with a javascript solution, though it depends how many different designs you want you may be able to get away with a couple of URLs that you redirect to.
You can pull the browser identifier in recent versions of matrix with %globals_server_HTTP_USER_AGENT%
You can sniff user/agent with paint layouts via the conditional keywords. Use the User Type condition which hunts on the string. I think this might be able to do what you're looking for. I don't see why you couldn't do something like:
%begin_X%
Your specific browser code, js or css
%end_X%Would be interested in learning if this was any help to you!
Beaten by Justin with an entirely different solution. Got to be quick!
Or, you could use the server variable condition and use HTTP_USER_AGENT. But, browser spoofing is always possible.
Nic, could you please elaborate on this, I didn't know I could use Matrix to access server variables - it was a question I asked once a long time ago.
I need to find a server based solution, because an awful lot of browsers (on mobile phones) don't support javascript.
[quote]Nic, could you please elaborate on this, I didn't know I could use Matrix to access server variables - it was a question I asked once a long time ago.
I need to find a server based solution, because an awful lot of browsers (on mobile phones) don't support javascript.[/quote]
Both Design Areas and Paint Layout Conditions have a "Server Variable Condition" that can be used. So, you just configure that condition, and use a variable like HTTP_USER_AGENT to test for the user agent. I have no tried this myself, but in theory, it will work.
Also you can use %globals_server_XXX% to access server variables anywhere else you might want to, as well as in the paint layout conditions (in recent releases) - there are some other useful variables you may want.
Can this be done on version 3.12.x or not ?
No, the %globals_server_XXX% keyword it not, but I am pretty sure the design and paint layout conditions are.
Please upgrade!!!!!!!
You are missing so much from being on 3.12!!!!