* Add test case for sv locale
* Use Rack::Utils to parse locale header
* Take "q" value into account
* Make '*' match the default locale.
* Add test for available_locales
* Correct test case sv -> en
* Add missing test cases for Safari requests
* Add missing require needed to run a single test file
* Reimplement WebHelpers#locale to handle regions in header
Implementation inspired by:
https://github.com/iain/http_accept_language/blob/master/lib/http_accept_language/parser.rb
Also see:
https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.4
* Add docs and references
* Add failing test cases for pt-br, pt-pt, pt (examples taken from Chrome & Safari)
* Add more test cases for Mac + Chrome + UK English + US English
* Make test cases for 'pt-PT,pt;q=0.8,en-US;q=0.6,en;q=0.4' and 'pt-pt' pass
* Make special case 'ru,en' work (equal qvalues)
* Unminify rickshaw graph CSS so we can maintain it
* Initial BiDi support for the Web UI
BiDi means the web app can serve both LTR and RTL languages at the same time.
1. Bootstrap-RTL overrides Bootstrap 3.3 styles for RTL clients
2. Application CSS was preprocessed thru rtlcss and then hand-trimmed to contain only RTL-specific directives.
3. Dashboard was tweaked to hardcode LTR for footer and polling gadget
* Vendor bootstrap-rtl.css
* Various RTL style fixes, need to flip all pull-* elements
* Upgrade Rickshaw to latest, remove dupe CSS
* Add Arabic language (credit to Milena Novakova)
Add Hebrew placeholder
Added dir attribute to html tag
* changes
* Clean up HTTP header generation, add Content-Language response header
* Use correct locale for hebrew
Migrate Sidekiq::Web a pure Rack application to avoid sinatra as
dependency. rack-protection is still needed.
The application is mounted on top of Rack::Builder, mantaining all of
the previous http interface.
Rack apps being used:
- Rack::File to serve assets
- Rack::Session::Cookie, the secret can be configured via
Sidekiq::Web.session_secret
- Rack::Protection, same as before when using sinatra
- Sidekiq::WebApplication, described below.
Sidekiq::WebApplication is a very simple rack application composed of a
Sidekiq::WebRouter and a Sidekiq::WebAction dispatcher. This terminology
was adopted to be able to mantain Sidekiq::Web as a Rack app.
The Router is heavily inspired on Rack::Router[0] (and in many parts
identical), however not being retrocompatible.
The Action is a wrapper to provide convenience, DRY code and maintain
the old interface.
I tried to mantain most of the old application structures so that
customizations and monkey-patches are easily adjustable or even
further work be done to enforce retrocompatibility.
Testing welcome!
0: https://github.com/pjb3/rack-router
2016-07-26 11:43:32 -03:00
Renamed from lib/sidekiq/web_helpers.rb (Browse further)