diff options
Diffstat (limited to 'app/models')
| -rw-r--r-- | app/models/referential.rb | 8 | 
1 files changed, 6 insertions, 2 deletions
| diff --git a/app/models/referential.rb b/app/models/referential.rb index 09c2e7d34..54497d3cf 100644 --- a/app/models/referential.rb +++ b/app/models/referential.rb @@ -13,7 +13,7 @@ class Referential < ActiveRecord::Base    validates_uniqueness_of :slug -  validates_format_of :slug, with: %r{\A[a-z][0-9a-z_]+\Z} +  validates_format_of :slug, with: %r{([a-z][a-z-]+_\d{10}|\d{10})}    validates_format_of :prefix, with: %r{\A[0-9a-zA-Z_]+\Z}    validates_format_of :upper_corner, with: %r{\A-?[0-9]+\.?[0-9]*\,-?[0-9]+\.?[0-9]*\Z}    validates_format_of :lower_corner, with: %r{\A-?[0-9]+\.?[0-9]*\,-?[0-9]+\.?[0-9]*\Z} @@ -423,7 +423,11 @@ class Referential < ActiveRecord::Base    end    def assign_slug -    self.slug ||= "#{name.parameterize.gsub('-', '_')}_#{Time.now.to_i}" if name +    self.slug ||= begin +      prefix = "#{name.parameterize}".scan(/[a-zA-Z-]/) +      prefix.delete_at 0 if prefix[0] == '-' +      prefix.empty? ? "#{Time.now.to_i}" : "#{prefix.join}_#{Time.now.to_i}" +    end if name    end    def assign_prefix | 
