Completed
Push — master ( 34d57f...665160 )
by Borja
04:02
created

App

Complexity

Total Complexity 0

Size/Duplication

Total Lines 28
Duplicated Lines 0 %

Test Coverage

Coverage 50%

Importance

Changes 0
Metric Value
wmc 0
dl 0
loc 28
ccs 8
cts 16
cp 0.5
c 0
b 0
f 0
1 1
require 'sinatra/base'
2
# Main sinatra App, using param routing.
3 1
class App < Sinatra::Base
4
  # GET Routing views
5 1
  get('/') { erb :index }
6 1
  error    { preview('error') }
7
8
  # RevengeQuest custom views
9 1
  get('/revenge') { erb :'revenge/index' }
10
11 1
  get '/:view/:param' do |view, _param| # Templates with double-routing
12
    es_element = %w(aire agua fuego tierra).include?(view)
13
    es_sagrada = %w(arena hielo sombra sangre).include?(view)
14
    # Custom case for redundant spell lists
15
    case
16
      when es_element then preview('hechizos')
17
      when es_sagrada then preview('sagradas')
18
      else preview(view) # Usual rooting
19
    end
20
  end
21
22 1
  get '/:view' do |view| # Templates with simple root-viewer
23
    campeones = %w(reservistas ausentes licenciados).include?(view)
24
    campeones ? preview('heroes') : preview(view)
25
  end
26
27
  # POST Routing views
28 1
  post('/calculador') { preview('calculador') }
29 1
  post('/buscar')     { preview('heroes') }
30
end
31