| Index: modules/adblockplusorg/files/adblockplus.org |
| =================================================================== |
| --- a/modules/adblockplusorg/files/adblockplus.org |
| +++ b/modules/adblockplusorg/files/adblockplus.org |
| @@ -16,12 +16,23 @@ |
| set $preferredLang en; |
| } |
| - if ($arg_a ~ ^(view|show)?$) { |
| - rewrite ^/(index\.html)?$ /$preferredLang/? redirect; |
| - rewrite ^/(\w\w(_\w\w)?)$ /$1/ redirect; |
| + set $browser "firefox"; |
| + if ($http_user_agent ~ \bChrome/\d+) { |
| + set $browser "chrome"; |
| + } |
| + if ($http_user_agent ~ \bPresto/\d+) { |
| + set $browser "opera"; |
| + } |
| + if ($http_user_agent ~ \bAndroid\s.*\bAppleWebKit/\d+) { |
| + set $browser "android"; |
| } |
| - rewrite ^/(\w\w)/installation$ /$1/ permanent; |
| + if ($arg_a ~ ^(view|show)?$) { |
| + rewrite ^/(index\.html)?$ /$preferredLang/$browser redirect; |
| + rewrite ^/(\w\w(_\w\w)?)$ /$1/$browser redirect; |
| + } |
| + |
| + rewrite ^/(\w\w(_\w\w)?)/installation$ /$1/ permanent; |
| rewrite ^/anwiki/(.*) /$1 permanent; |
| if (-f $request_filename) { |
| @@ -31,28 +42,24 @@ |
| break; |
| } |
| - if ($http_user_agent ~ \bChrome/\d+) { |
| - rewrite ^/(\w\w(_\w\w)?)/?$ /$1/chrome; |
| + set $static_uri $uri; |
| + if ($uri ~ ^/(\w\w(_\w\w)?)/(firefox|chrome|opera|android)) { |
| + set $static_uri "/$1"; |
| } |
| - if ($http_user_agent ~ \bPresto/\d+) { |
| - rewrite ^/(\w\w(_\w\w)?)/?$ /$1/opera; |
| - } |
| - if ($http_user_agent !~ \bChrome/\d+) { |
| - rewrite ^/(\w\w(_\w\w)?)/?$ /$1/firefox; |
| - } |
| - |
| set $static ""; |
| - if (-f "$document_root/static$uri") { |
| + if (-f "$document_root/static$static_uri") { |
| set $static "ok"; |
| } |
| - if (-d "$document_root/static$uri") { |
| + if (-d "$document_root/static$static_uri") { |
| set $static "ok"; |
| } |
| set $static "$static!$arg_a!$cookie_anwiki_anwsesscode"; |
| if ($static ~ ^ok!(view|show)?!$) { |
| - rewrite (.*) /static$1 last; |
| + rewrite ^/(\w\w(_\w\w)?)/(firefox|chrome|opera|android) /static/$1/?browser=$3 last; |
| + rewrite (.*) /static/$1 last; |
|
Wladimir Palant
2012/12/19 16:41:56
Do we need the special case and code duplication f
Felix Dahlke
2012/12/19 20:01:23
You're right, changed that part. I was a bit worri
|
| } |
| + rewrite ^/(\w\w(_\w\w)?)/(firefox|chrome|opera|android) /index.php?p=$1&browser=$3 last; |
| rewrite ^/(.*) /index.php?p=$1 last; |
| } |
| @@ -67,41 +74,13 @@ |
| default_type text/html; |
| charset utf-8; |
| - set $browserClass ' nongecko'; |
| - if ($http_user_agent ~ \bGecko/\d+) { |
| - set $browserClass ' gecko'; |
| - } |
| - if ($http_user_agent ~ \bK-Meleon\b) { |
| - set $browserClass ' kmeleon'; |
| - } |
| - if ($http_user_agent ~ \bChrome/\d+) { |
| - set $browserClass ' chrome'; |
| - } |
| - if ($http_user_agent ~ \bPresto/\d+) { |
| - set $browserClass ' opera'; |
| - } |
| - sub_filter ' id="content" class="multicolumn"' ' id="content" class="multicolumn$browserClass"'; |
| + sub_filter ' id="content"' ' id="content" class="$arg_browser"'; |
|
Wladimir Palant
2012/12/19 16:41:56
Note that this will affect all pages, not just the
Felix Dahlke
2012/12/19 20:01:23
I've tried to put that sub_filter inside an if, bu
|
| } |
| location ~ \.php$ { |
| client_max_body_size 8m; |
| - set $browserClass ' nongecko'; |
| - if ($http_user_agent ~ \bGecko/\d+) { |
| - set $browserClass ' gecko'; |
| - } |
| - if ($http_user_agent ~ \bK-Meleon\b) { |
| - set $browserClass ' kmeleon'; |
| - } |
| - if ($http_user_agent ~ \bChrome/\d+) { |
| - set $browserClass ' chrome'; |
| - } |
| - if ($http_user_agent ~ \bPresto/\d+) { |
| - set $browserClass ' opera'; |
| - } |
| - sub_filter ' id="content" class="multicolumn"' ' id="content" class="multicolumn$browserClass"'; |
| - |
| fastcgi_pass unix:/tmp/php-fastcgi.sock; |
| fastcgi_index index.php; |
| @@ -126,5 +105,7 @@ |
| fastcgi_param SERVER_ADDR $server_addr; |
| fastcgi_param SERVER_PORT $server_port; |
| fastcgi_param SERVER_NAME $server_name; |
| + |
| + sub_filter ' id="content"' ' id="content" class="$arg_browser"'; |
|
Wladimir Palant
2012/12/19 16:41:56
Nit: you probably should leave sub_filter in the s
Felix Dahlke
2012/12/19 20:01:23
Done. Thought it made more sense down there but yo
|
| } |
| } |