diff options
| author | cedricnjanga | 2018-02-20 15:09:20 -0800 | 
|---|---|---|
| committer | cedricnjanga | 2018-02-20 15:09:20 -0800 | 
| commit | 04f26371e23a116cc7be22bd694010820d469e0c (patch) | |
| tree | eec614bc3266b4081667f739515f9b91fee378bf /app | |
| parent | 8e751acfb400978d45ae78e937e5401a4d118b5d (diff) | |
| download | chouette-core-04f26371e23a116cc7be22bd694010820d469e0c.tar.bz2 | |
Refs #5609 Change slug format
Diffstat (limited to 'app')
| -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 | 
