mirror of
https://0xacab.org/sutty/sutty
synced 2024-11-22 22:36:21 +00:00
5e3d5e3482
esto nos da flexibilidad para poder incluir más plantillas en sutty solo agregándolas a la lista de diseños disponibles, sin tener que deployear sutty. además cada sitio puede tener su propia versión de la gema y esto obliga a tener siempre la última. fixes #1849
29 lines
870 B
Ruby
29 lines
870 B
Ruby
# frozen_string_literal: true
|
|
|
|
# El diseño de un sitio es la plantilla/tema. En este modelo cargamos
|
|
# las propiedades para poder verlas desde el panel y elegir un diseño
|
|
# para el sitio.
|
|
#
|
|
# TODO: Agregar captura de pantalla con ActiveStorage
|
|
class Design < ApplicationRecord
|
|
extend Mobility
|
|
|
|
NO_THEMES = %w[sutty-theme-none sutty-theme-custom].freeze
|
|
|
|
translates :name, type: :string, locale_accessors: true
|
|
translates :description, type: :text, locale_accessors: true
|
|
translates :credits, type: :text, locale_accessors: true
|
|
|
|
has_many :sites
|
|
|
|
validates :name, presence: true, uniqueness: true
|
|
validates :gem, presence: true, uniqueness: true
|
|
validates :description, presence: true
|
|
|
|
# Trae todos los temas disponibles.
|
|
scope :available_themes, -> { where.not(gem: NO_THEMES).pluck(:gem) }
|
|
|
|
def no_theme?
|
|
NO_THEMES.include? gem
|
|
end
|
|
end
|