Sha256: 6bc424f30158c27d14a06a4fbf6cce21fb7981878e5a3c7055a25120a95e5f13

Contents?: true

Size: 755 Bytes

Versions: 116

Compression:

Stored size: 755 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_if_blank

      private

      def populate_slug_if_blank
        if self.slug.blank? and self.label.present?
          self.slug = ActiveSupport::Inflector.parameterize(self.label)
        end
      end
    end
  end
end

Version data entries

116 entries across 116 versions & 1 rubygems

Version Path
govuk_content_models-29.1.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-29.0.1 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-29.0.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-28.10.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-28.9.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-28.8.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-28.7.1 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-28.7.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-28.6.2 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-28.6.1 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-28.6.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-28.5.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-28.4.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-28.3.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-28.2.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-28.1.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-28.0.1 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-28.0.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-27.2.0 app/models/simple_smart_answer_edition/node/option.rb
govuk_content_models-27.1.0 app/models/simple_smart_answer_edition/node/option.rb