Browse Source

Add length validations for string fields (#24283).

Patch by Felix Schäfer.

git-svn-id: http://svn.redmine.org/redmine/trunk@15989 e93f8b46-1217-0410-a6f0-8f06a7374b81
tags/3.4.0
Jean-Philippe Lang 7 years ago
parent
commit
7b3f2b51c0

+ 1
- 0
app/models/custom_field.rb View File

@@ -32,6 +32,7 @@ class CustomField < ActiveRecord::Base
validates_presence_of :name, :field_format
validates_uniqueness_of :name, :scope => :type
validates_length_of :name, :maximum => 30
validates_length_of :regexp, maximum: 30
validates_inclusion_of :field_format, :in => Proc.new { Redmine::FieldFormat.available_formats }
validate :validate_custom_field
attr_protected :id

+ 2
- 0
app/models/repository.rb View File

@@ -37,7 +37,9 @@ class Repository < ActiveRecord::Base
# has_many :changesets, :dependent => :destroy is too slow for big repositories
before_destroy :clear_changesets

validates_length_of :login, maximum: 60, allow_nil: true
validates_length_of :password, :maximum => 255, :allow_nil => true
validates_length_of :root_url, :url, maximum: 255
validates_length_of :identifier, :maximum => IDENTIFIER_MAX_LENGTH, :allow_blank => true
validates_uniqueness_of :identifier, :scope => :project_id
validates_exclusion_of :identifier, :in => %w(browse show entry raw changes annotate diff statistics graph revisions revision)

+ 1
- 0
app/models/user.rb View File

@@ -111,6 +111,7 @@ class User < Principal
validates_format_of :login, :with => /\A[a-z0-9_\-@\.]*\z/i
validates_length_of :login, :maximum => LOGIN_LENGTH_LIMIT
validates_length_of :firstname, :lastname, :maximum => 30
validates_length_of :identity_url, maximum: 255
validates_inclusion_of :mail_notification, :in => MAIL_NOTIFICATION_OPTIONS.collect(&:first), :allow_blank => true
validate :validate_password_length
validate do

+ 1
- 1
app/models/version.rb View File

@@ -35,7 +35,7 @@ class Version < ActiveRecord::Base
validates_presence_of :name
validates_uniqueness_of :name, :scope => [:project_id]
validates_length_of :name, :maximum => 60
validates_length_of :description, :maximum => 255
validates_length_of :description, :wiki_page_title, :maximum => 255
validates :effective_date, :date => true
validates_inclusion_of :status, :in => VERSION_STATUSES
validates_inclusion_of :sharing, :in => VERSION_SHARINGS

+ 1
- 0
app/models/wiki.rb View File

@@ -25,6 +25,7 @@ class Wiki < ActiveRecord::Base

validates_presence_of :start_page
validates_format_of :start_page, :with => /\A[^,\.\/\?\;\|\:]*\z/
validates_length_of :title, maximum: 255
attr_protected :id

before_destroy :delete_redirects

+ 1
- 0
app/models/wiki_page.rb View File

@@ -45,6 +45,7 @@ class WikiPage < ActiveRecord::Base
validates_presence_of :title
validates_format_of :title, :with => /\A[^,\.\/\?\;\|\s]*\z/
validates_uniqueness_of :title, :scope => :wiki_id, :case_sensitive => false
validates_length_of :title, maximum: 255
validates_associated :content
attr_protected :id


Loading…
Cancel
Save