scm: add feature of per project repository log encoding setting (#1735).
Subversion, Mercurial and Git supports UTF-8 log. git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4982 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
@@ -189,7 +189,9 @@ module RepositoriesHelper
|
||||
def darcs_field_tags(form, repository)
|
||||
content_tag('p', form.text_field(:url, :label => 'Root directory',
|
||||
:size => 60, :required => true,
|
||||
:disabled => (repository && !repository.new_record?)))
|
||||
:disabled => (repository && !repository.new_record?))) +
|
||||
content_tag('p', form.select(:log_encoding, [nil] + Setting::ENCODINGS,
|
||||
:label => 'Commit messages encoding', :required => true))
|
||||
end
|
||||
|
||||
def mercurial_field_tags(form, repository)
|
||||
@@ -212,13 +214,17 @@ module RepositoriesHelper
|
||||
:disabled => !repository.new_record?)) +
|
||||
content_tag('p', form.text_field(:url, :label => 'Module',
|
||||
:size => 30, :required => true,
|
||||
:disabled => !repository.new_record?))
|
||||
:disabled => !repository.new_record?)) +
|
||||
content_tag('p', form.select(:log_encoding, [nil] + Setting::ENCODINGS,
|
||||
:label => 'Commit messages encoding', :required => true))
|
||||
end
|
||||
|
||||
def bazaar_field_tags(form, repository)
|
||||
content_tag('p', form.text_field(:url, :label => 'Root directory',
|
||||
:size => 60, :required => true,
|
||||
:disabled => (repository && !repository.new_record?)))
|
||||
:disabled => (repository && !repository.new_record?))) +
|
||||
content_tag('p', form.select(:log_encoding, [nil] + Setting::ENCODINGS,
|
||||
:label => 'Commit messages encoding', :required => true))
|
||||
end
|
||||
|
||||
def filesystem_field_tags(form, repository)
|
||||
|
||||
@@ -191,7 +191,7 @@ class Repository < ActiveRecord::Base
|
||||
end
|
||||
|
||||
def repo_log_encoding
|
||||
encoding = Setting.commit_logs_encoding.to_s.strip
|
||||
encoding = log_encoding.to_s.strip
|
||||
encoding.blank? ? 'UTF-8' : encoding
|
||||
end
|
||||
|
||||
|
||||
@@ -19,10 +19,11 @@ require 'redmine/scm/adapters/bazaar_adapter'
|
||||
|
||||
class Repository::Bazaar < Repository
|
||||
attr_protected :root_url
|
||||
validates_presence_of :url
|
||||
validates_presence_of :url, :log_encoding
|
||||
|
||||
ATTRIBUTE_KEY_NAMES = {
|
||||
"url" => "Root directory",
|
||||
"log_encoding" => "Commit messages encoding",
|
||||
}
|
||||
def self.human_attribute_name(attribute_key_name)
|
||||
ATTRIBUTE_KEY_NAMES[attribute_key_name] || super
|
||||
|
||||
@@ -19,11 +19,12 @@ require 'redmine/scm/adapters/cvs_adapter'
|
||||
require 'digest/sha1'
|
||||
|
||||
class Repository::Cvs < Repository
|
||||
validates_presence_of :url, :root_url
|
||||
validates_presence_of :url, :root_url, :log_encoding
|
||||
|
||||
ATTRIBUTE_KEY_NAMES = {
|
||||
"url" => "CVSROOT",
|
||||
"root_url" => "Module",
|
||||
"log_encoding" => "Commit messages encoding",
|
||||
}
|
||||
def self.human_attribute_name(attribute_key_name)
|
||||
ATTRIBUTE_KEY_NAMES[attribute_key_name] || super
|
||||
|
||||
@@ -18,10 +18,11 @@
|
||||
require 'redmine/scm/adapters/darcs_adapter'
|
||||
|
||||
class Repository::Darcs < Repository
|
||||
validates_presence_of :url
|
||||
validates_presence_of :url, :log_encoding
|
||||
|
||||
ATTRIBUTE_KEY_NAMES = {
|
||||
"url" => "Root directory",
|
||||
"log_encoding" => "Commit messages encoding",
|
||||
}
|
||||
def self.human_attribute_name(attribute_key_name)
|
||||
ATTRIBUTE_KEY_NAMES[attribute_key_name] || super
|
||||
|
||||
Reference in New Issue
Block a user