Defect #10673 » allow-dots-and-commas-in-wiki-page-names.patch
| app/models/wiki.rb | ||
|---|---|---|
| 26 | 26 |
acts_as_watchable |
| 27 | 27 | |
| 28 | 28 |
validates_presence_of :start_page |
| 29 |
validates_format_of :start_page, :with => /\A[^,\.\/\?\;\|\:]*\z/
|
|
| 29 |
validates_format_of :start_page, :with => /\A[^\/\?\;\|\:]*\z/ |
|
| 30 | 30 |
validates_length_of :start_page, maximum: 255 |
| 31 | 31 | |
| 32 | 32 |
before_destroy :delete_redirects |
| ... | ... | |
| 104 | 104 |
# turn a string into a valid page title |
| 105 | 105 |
def self.titleize(title) |
| 106 | 106 |
# replace spaces with _ and remove unwanted caracters |
| 107 |
title = title.gsub(/\s+/, '_').delete(',./?;|:') if title
|
|
| 107 |
title = title.gsub(/\s+/, '_').delete('/?;|:') if title
|
|
| 108 | 108 |
# upcase the first letter |
| 109 | 109 |
title = (title.slice(0..0).upcase + (title.slice(1..-1) || '')) if title |
| 110 | 110 |
title |
| app/models/wiki_page.rb | ||
|---|---|---|
| 52 | 52 |
attr_writer :deleted_attachment_ids |
| 53 | 53 | |
| 54 | 54 |
validates_presence_of :title |
| 55 |
validates_format_of :title, :with => /\A[^,\.\/\?\;\|\s]*\z/
|
|
| 55 |
validates_format_of :title, :with => /\A[^\/\?\;\|\s]*\z/ |
|
| 56 | 56 |
validates_uniqueness_of :title, :scope => :wiki_id, :case_sensitive => false |
| 57 | 57 |
validates_length_of :title, maximum: 255 |
| 58 | 58 |
validates_associated :content |
| app/views/wiki/_new_modal.html.erb | ||
|---|---|---|
| 10 | 10 |
<div class="box tabular"> |
| 11 | 11 |
<p> |
| 12 | 12 |
<%= f.text_field :title, :name => 'title', :size => 60, :required => true %> |
| 13 |
<em class="info"><%= l(:text_unallowed_characters) %>: , . / ? ; : |</em>
|
|
| 13 |
<em class="info"><%= l(:text_unallowed_characters) %>: / ? ; : |</em> |
|
| 14 | 14 |
</p> |
| 15 | 15 |
<p> |
| 16 | 16 |
<% if params[:parent].present? %> |
| app/views/wiki/new.html.erb | ||
|---|---|---|
| 8 | 8 |
<div class="box tabular"> |
| 9 | 9 |
<p> |
| 10 | 10 |
<%= f.text_field :title, :name => 'title', :size => 60, :required => true %> |
| 11 |
<em class="info"><%= l(:text_unallowed_characters) %>: , . / ? ; : |</em>
|
|
| 11 |
<em class="info"><%= l(:text_unallowed_characters) %>: / ? ; : |</em> |
|
| 12 | 12 |
</p> |
| 13 | 13 |
</div> |
| 14 | 14 | |
| config/routes.rb | ||
|---|---|---|
| 192 | 192 |
end |
| 193 | 193 | |
| 194 | 194 |
match 'wiki/index', :controller => 'wiki', :action => 'index', :via => :get |
| 195 |
resources :wiki, :except => [:index, :create], :as => 'wiki_page' do |
|
| 196 |
member do |
|
| 197 |
get 'rename' |
|
| 198 |
post 'rename' |
|
| 199 |
get 'history' |
|
| 200 |
get 'diff' |
|
| 201 |
match 'preview', :via => [:post, :put, :patch] |
|
| 202 |
post 'protect' |
|
| 203 |
post 'add_attachment' |
|
| 204 |
end |
|
| 205 |
collection do |
|
| 206 |
get 'export' |
|
| 207 |
get 'date_index' |
|
| 208 |
post 'new' |
|
| 195 |
constraints(id: /[^\/]+/) do |
|
| 196 |
resources :wiki, :except => [:index, :create], :as => 'wiki_page' do |
|
| 197 |
member do |
|
| 198 |
get 'rename' |
|
| 199 |
post 'rename' |
|
| 200 |
get 'history' |
|
| 201 |
get 'diff' |
|
| 202 |
match 'preview', :via => [:post, :put, :patch] |
|
| 203 |
post 'protect' |
|
| 204 |
post 'add_attachment' |
|
| 205 |
end |
|
| 206 |
collection do |
|
| 207 |
get 'export' |
|
| 208 |
get 'date_index' |
|
| 209 |
post 'new' |
|
| 210 |
end |
|
| 209 | 211 |
end |
| 210 |
end
|
|
| 211 |
match 'wiki', :controller => 'wiki', :action => 'show', :via => :get
|
|
| 212 |
get 'wiki/:id/:version', :to => 'wiki#show', :constraints => {:version => /\d+/}
|
|
| 213 |
delete 'wiki/:id/:version', :to => 'wiki#destroy_version'
|
|
| 214 |
get 'wiki/:id/:version/annotate', :to => 'wiki#annotate'
|
|
| 215 |
get 'wiki/:id/:version/diff', :to => 'wiki#diff'
|
|
| 212 |
match 'wiki', :controller => 'wiki', :action => 'show', :via => :get
|
|
| 213 |
get 'wiki/:id/:version', :to => 'wiki#show', :constraints => {:version => /\d+/}
|
|
| 214 |
delete 'wiki/:id/:version', :to => 'wiki#destroy_version'
|
|
| 215 |
get 'wiki/:id/:version/annotate', :to => 'wiki#annotate'
|
|
| 216 |
get 'wiki/:id/:version/diff', :to => 'wiki#diff'
|
|
| 217 |
end
|
|
| 216 | 218 |
end |
| 217 | 219 | |
| 218 | 220 |
resources :issues do |
- « Previous
- 1
- 2
- 3
- 4
- Next »