From d7bfbee0fe39d31c78ac3a0c0b8dc63e905a736b Mon Sep 17 00:00:00 2001 From: Thibaut Courouble Date: Tue, 24 Jan 2017 07:33:17 -0500 Subject: [PATCH] Add redirection for MDN WindowTimers docs --- lib/app.rb | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/lib/app.rb b/lib/app.rb index c13087e8..42e51aee 100644 --- a/lib/app.rb +++ b/lib/app.rb @@ -300,8 +300,19 @@ class App < Sinatra::Application get %r{\A/([\w~\.%]+)(\-[\w\-]+)?(/.*)?\z} do |doc, type, rest| doc.sub! '%7E', '~' - return redirect "/#{DOC_REDIRECTS[doc]}#{type}#{rest}", 301 if DOC_REDIRECTS.key?(doc) - return redirect "/angularjs/api#{rest}", 301 if doc == 'angular' && rest && rest.start_with?('/ng') + + if DOC_REDIRECTS.key?(doc) + return redirect "/#{DOC_REDIRECTS[doc]}#{type}#{rest}", 301 + end + + if rest && doc == 'angular' && rest.start_with?('/ng') + return redirect "/angularjs/api#{rest}", 301 + end + + if rest && doc == 'dom' && rest.start_with?('/windowtimers') + return redirect "/dom#{rest.sub('windowtimers', 'windoworworkerglobalscope')}" + end + return 404 unless @doc = find_doc(doc) if rest.nil?