diff options
author | Eric Davis <edavis@littlestreamsoftware.com> | 2009-05-30 23:30:36 +0000 |
---|---|---|
committer | Eric Davis <edavis@littlestreamsoftware.com> | 2009-05-30 23:30:36 +0000 |
commit | 62e58f26b0c6905fc0b2d79ed278ac0e4f55d793 (patch) | |
tree | 6989cbc655e9ffee0db9b7558985cd77d28b0edb /app/views/enumerations | |
parent | fbfb34949677c41734531a552547fb216537999f (diff) | |
download | redmine-62e58f26b0c6905fc0b2d79ed278ac0e4f55d793.tar.gz redmine-62e58f26b0c6905fc0b2d79ed278ac0e4f55d793.zip |
Changed Enumerations to use a Single Table Inheritance
* Added migrations to change Enumerations to an STI relationship
* Added TimeEntryActivity model (STI)
* Added DocumentCategory model (STI)
* Added IssuePriority model (STI)
* Added Enumeration#get_subclasses to get a list of the subclasses of Enumeration
* Changed Enumeration to use the STI type field instead of the opt field
* Changed Enumeration#opt to return the old opt values but with a deprecation warning.
* Removed Enumeration::OPTIONS
* Removed the dynamic named_scopes in favor of specific named_scopes. Kept for
compatibility reasons.
* Added Enumeration#default so each subclass can easily find it's default record.
* Fixed Enumeration#default to use the STI scoping with a fake default scope for finding Enumeration's default.
* Added a 'all' named scope for getting all records in order by position.
* Added Deprecation warnings to the old named_scopes in Enumerations.
* Moved various methods off of Enumeration and onto the concrete classes
* Changed the EnumerationsController to use types
* Updated the Enumeration list template
* Added has_many relationships to the Enumeration STI classes.
* Fixes for tests.
#3007
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2777 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'app/views/enumerations')
-rw-r--r-- | app/views/enumerations/_form.rhtml | 2 | ||||
-rw-r--r-- | app/views/enumerations/list.rhtml | 8 |
2 files changed, 5 insertions, 5 deletions
diff --git a/app/views/enumerations/_form.rhtml b/app/views/enumerations/_form.rhtml index 3f98f5213..dac0c9331 100644 --- a/app/views/enumerations/_form.rhtml +++ b/app/views/enumerations/_form.rhtml @@ -1,7 +1,7 @@ <%= error_messages_for 'enumeration' %> <div class="box"> <!--[form:optvalue]--> -<%= hidden_field 'enumeration', 'opt' %> +<%= hidden_field 'enumeration', 'type' %> <p><label for="enumeration_name"><%=l(:field_name)%></label> <%= text_field 'enumeration', 'name' %></p> diff --git a/app/views/enumerations/list.rhtml b/app/views/enumerations/list.rhtml index 485dec71c..8143ad0f3 100644 --- a/app/views/enumerations/list.rhtml +++ b/app/views/enumerations/list.rhtml @@ -1,9 +1,9 @@ <h2><%=l(:label_enumerations)%></h2> -<% Enumeration::OPTIONS.each do |option, params| %> -<h3><%= l(params[:label]) %></h3> +<% Enumeration.get_subclasses.each do |klass| %> +<h3><%= l(klass::OptionName) %></h3> -<% enumerations = Enumeration.values(option) %> +<% enumerations = klass.all %> <% if enumerations.any? %> <table class="list"> <% enumerations.each do |enumeration| %> @@ -20,7 +20,7 @@ <% reset_cycle %> <% end %> -<p><%= link_to l(:label_enumeration_new), { :action => 'new', :opt => option } %></p> +<p><%= link_to l(:label_enumeration_new), { :action => 'new', :type => klass.name } %></p> <% end %> <% html_title(l(:label_enumerations)) -%> |