Sha256: 26f421a15dfc600156b05691a239134e7f9e391176954764117ace55b24d9d86

Contents?: true

Size: 724 Bytes

Versions: 17

Compression:

Stored size: 724 Bytes

Contents

require "edition"

class SimpleSmartAnswerEdition < Edition
  class Node
    class Option
      include Mongoid::Document

      embedded_in :node, :class_name => "SimpleSmartAnswerEdition::Node"

      field :label, type: String
      field :slug, type: String
      field :next_node, type: String
      field :order, type: Integer

      default_scope order_by([:order, :asc])

      validates :label, :next_node, presence: true
      validates :slug, :format => {:with => /\A[a-z0-9-]+\z/}

      before_validation :populate_slug

      private

      def populate_slug
        if label.present? && !slug_changed?
          self.slug = ActiveSupport::Inflector.parameterize(label)
        end
      end
    end
  end
end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
govuk_content_models-34.0.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-33.0.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-32.3.1 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-32.3.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-32.2.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-32.1.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-32.0.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-31.4.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-31.3.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-31.2.2 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-31.2.1 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-31.2.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-31.1.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-31.0.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-30.0.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-29.1.2 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-29.1.1 app/models/simple_smart_answer_edition/node/option.rb