File: sinatra_app.rb

package info (click to toggle)
ruby-rack-flash3 1.0.5-2.1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 160 kB
  • sloc: ruby: 296; makefile: 7
file content (35 lines) | stat: -rw-r--r-- 597 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
require 'sinatra/base'
require 'rack-flash'

class MyApp < Sinatra::Base
  use Rack::Flash

  set :root, File.dirname(__FILE__)
  set :layout, true
  set :logging, true
  set :sessions, true

  get '/' do
    erb :index
  end

  # View the value of any given flash
  get '/:name' do
    erb :show
  end

  post '/:name' do
    if params[:message].strip.empty?
      flash["err"] = "You must enter a message."
      flash["err_on_#{params[:name]}"] = 1
      redirect('/')
    end

    flash[:ok] = "Set flash entry!"

    flash[params[:name]] = params[:message]
    redirect '/'
  end

  run!
end