2019-03-26 15:32:20 +00:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2018-01-29 22:19:10 +00:00
|
|
|
# Forma de ingreso a Sutty
|
2018-01-02 17:19:25 +00:00
|
|
|
class ApplicationController < ActionController::Base
|
|
|
|
protect_from_forgery with: :exception
|
2018-02-26 22:08:21 +00:00
|
|
|
before_action :set_locale
|
2018-01-29 18:09:30 +00:00
|
|
|
|
2018-01-29 22:19:10 +00:00
|
|
|
# No tenemos índice de sutty, vamos directamente a ver el listado de
|
|
|
|
# sitios
|
2018-01-29 18:09:30 +00:00
|
|
|
def index
|
|
|
|
redirect_to sites_path
|
|
|
|
end
|
2018-01-29 22:19:10 +00:00
|
|
|
|
2019-03-26 15:32:20 +00:00
|
|
|
def markdown; end
|
2018-02-25 01:10:37 +00:00
|
|
|
|
2018-01-29 22:19:10 +00:00
|
|
|
private
|
|
|
|
|
|
|
|
# Encontrar un sitio por su ID
|
|
|
|
# TODO volverlo más natural a rails
|
|
|
|
def find_site
|
|
|
|
id = params[:site_id] || params[:id]
|
|
|
|
|
|
|
|
current_user.sites.find do |s|
|
|
|
|
s.id == id
|
|
|
|
end
|
|
|
|
end
|
2018-01-30 15:20:19 +00:00
|
|
|
|
|
|
|
def find_post(site)
|
|
|
|
id = params[:post_id] || params[:id]
|
2018-05-08 21:14:00 +00:00
|
|
|
lang = find_lang(site)
|
2018-02-22 19:01:11 +00:00
|
|
|
posts = site.posts_for(lang)
|
2018-01-30 15:20:19 +00:00
|
|
|
|
2018-02-22 19:01:11 +00:00
|
|
|
posts.find do |p|
|
2018-01-30 15:20:19 +00:00
|
|
|
p.id == id
|
|
|
|
end
|
|
|
|
end
|
2018-02-23 19:20:51 +00:00
|
|
|
|
2018-05-08 21:14:00 +00:00
|
|
|
def find_lang(site)
|
|
|
|
params.fetch(:lang, site.default_lang)
|
|
|
|
end
|
|
|
|
|
|
|
|
def find_template(site)
|
2018-05-17 19:06:08 +00:00
|
|
|
id = params[:template_id] || params[:template] || params.dig(:post, :layout)
|
2018-05-08 21:14:00 +00:00
|
|
|
site.templates.find do |t|
|
|
|
|
t.id == id
|
|
|
|
end
|
2018-02-23 19:20:51 +00:00
|
|
|
end
|
2018-02-26 22:08:21 +00:00
|
|
|
|
|
|
|
def set_locale
|
|
|
|
I18n.locale = session[:lang] if session[:lang].present?
|
|
|
|
end
|
2018-01-02 17:19:25 +00:00
|
|
|
end
|