diff options
Diffstat (limited to 'app')
-rw-r--r-- | app/controllers/projects_controller.rb | 1 | ||||
-rw-r--r-- | app/helpers/settings_helper.rb | 1 | ||||
-rw-r--r-- | app/models/project.rb | 6 | ||||
-rw-r--r-- | app/views/settings/_general.rhtml | 3 | ||||
-rw-r--r-- | app/views/settings/_projects.rhtml | 12 |
5 files changed, 20 insertions, 3 deletions
diff --git a/app/controllers/projects_controller.rb b/app/controllers/projects_controller.rb index 43d35cf4f..0d83d81b3 100644 --- a/app/controllers/projects_controller.rb +++ b/app/controllers/projects_controller.rb @@ -69,6 +69,7 @@ class ProjectsController < ApplicationController :order => 'name') @project = Project.new(params[:project]) if request.get? + @project.identifier = Project.next_identifier if Setting.sequential_project_identifiers? @project.trackers = Tracker.all @project.is_public = Setting.default_projects_public? @project.enabled_module_names = Redmine::AccessControl.available_project_modules diff --git a/app/helpers/settings_helper.rb b/app/helpers/settings_helper.rb index d88269f7d..47e691334 100644 --- a/app/helpers/settings_helper.rb +++ b/app/helpers/settings_helper.rb @@ -19,6 +19,7 @@ module SettingsHelper def administration_settings_tabs tabs = [{:name => 'general', :partial => 'settings/general', :label => :label_general}, {:name => 'authentication', :partial => 'settings/authentication', :label => :label_authentication}, + {:name => 'projects', :partial => 'settings/projects', :label => :label_project_plural}, {:name => 'issues', :partial => 'settings/issues', :label => :label_issue_tracking}, {:name => 'notifications', :partial => 'settings/notifications', :label => l(:field_mail_notification)}, {:name => 'mail_handler', :partial => 'settings/mail_handler', :label => l(:label_incoming_emails)}, diff --git a/app/models/project.rb b/app/models/project.rb index 9e4bd6971..adc70c644 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -238,6 +238,12 @@ class Project < ActiveRecord::Base enabled_modules << EnabledModule.new(:name => name.to_s) end end + + # Returns an auto-generated project identifier based on the last identifier used + def self.next_identifier + p = Project.find(:first, :order => 'created_on DESC') + p.nil? ? nil : p.identifier.to_s.succ + end protected def validate diff --git a/app/views/settings/_general.rhtml b/app/views/settings/_general.rhtml index 1d17a003e..bb56c43db 100644 --- a/app/views/settings/_general.rhtml +++ b/app/views/settings/_general.rhtml @@ -46,9 +46,6 @@ <p><label><%= l(:setting_feeds_limit) %></label> <%= text_field_tag 'settings[feeds_limit]', Setting.feeds_limit, :size => 6 %></p> - -<p><label><%= l(:setting_default_projects_public) %></label> -<%= check_box_tag 'settings[default_projects_public]', 1, Setting.default_projects_public? %><%= hidden_field_tag 'settings[default_projects_public]', 0 %></p> </div> <%= submit_tag l(:button_save) %> diff --git a/app/views/settings/_projects.rhtml b/app/views/settings/_projects.rhtml new file mode 100644 index 000000000..1cd4f6e9b --- /dev/null +++ b/app/views/settings/_projects.rhtml @@ -0,0 +1,12 @@ +<% form_tag({:action => 'edit', :tab => 'projects'}) do %> + +<div class="box tabular settings"> +<p><label><%= l(:setting_default_projects_public) %></label> +<%= check_box_tag 'settings[default_projects_public]', 1, Setting.default_projects_public? %><%= hidden_field_tag 'settings[default_projects_public]', 0 %></p> + +<p><label><%= l(:setting_sequential_project_identifiers) %></label> +<%= check_box_tag 'settings[sequential_project_identifiers]', 1, Setting.sequential_project_identifiers? %><%= hidden_field_tag 'settings[sequential_project_identifiers]', 0 %></p> +</div> + +<%= submit_tag l(:button_save) %> +<% end %> |