This repository was archived by the owner on Nov 7, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathapp.rb
More file actions
88 lines (67 loc) · 2.01 KB
/
app.rb
File metadata and controls
88 lines (67 loc) · 2.01 KB
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
# encoding: utf-8
require 'uri'
require 'r18n-core'
#require 'active_support/core_ext/string/filters'
include R18n::Helpers;
R18n.set('es')
class RepresentantesApp < Sinatra::Base
# léase en tono de https://www.youtube.com/watch?v=9_FiIkutpPk
set :root, File.dirname(__FILE__)
# Loadeamos todos los plugins de sinatra
register Sinatra::ConfigFile
register Sinatra::Cookies
register Sinatra::JSON
register Sinatra::MultiRoute
register Sinatra::Namespace
# Y configuramos para reloadear
enable :sessions
set :session_secret, 'un montón de ricos huevones'
# Hacemos más fácil la vida en sinatra
require_relative 'helpers/files'
# Porqué en corto vamos a configurar
Files::with_files 'config/*yml' do |file|
config_file file
end
# Primero verás, las libreriás
# Con sus archivos bien bizarros al azar
Files::require_dir './lib'
# Y luego helpers
# Descagando el ObjectSpace
# Rubby y sinatra son un pedo, como ves
Files::with_files './helpers/*rb' do |file|
existing_modules = ObjectSpace.each_object(Module).to_a
require file
(ObjectSpace.each_object(Module).to_a - existing_modules).each do |mod|
helpers mod
end
end
# Después modelos
Files::require_dir './models'
# Siguen controladores
Files::require_dir './controllers'
# Unos datos y otros lógica porque EME-VE-CE
# Y luego hasta atrás configuro los requests
# Con pendejadas que siempre olvidas tú
configure :production, :development do
settings.environment = ENV['RACK_ENV'].to_sym
ENV['SASS_PATH'] = 'assets/css'
# Luego el sinatra-r18n es bien necio
R18n.set('es')
I18n.enforce_available_locales = true
set :default_locale, 'es'
set :locale, 'es'
$settings = settings
Mongoid.configure do |config|
config.sessions = settings.mongodb[:sessions]
end
# Bien pinche necio, les digo
set :default_locale, 'es-mx'
end
# Muestra un mapa
get '/' do
view :portada
end
get '/acerca-de' do
view :acerca
end
end