diff options
Diffstat (limited to 'app')
-rw-r--r-- | app/controllers/admin_public_body_controller.rb | 2 | ||||
-rw-r--r-- | app/controllers/public_body_controller.rb | 4 | ||||
-rw-r--r-- | app/models/public_body.rb | 16 | ||||
-rw-r--r-- | app/views/admin_public_body/_tag_help.rhtml | 2 | ||||
-rw-r--r-- | app/views/admin_public_body/import_csv.rhtml | 2 | ||||
-rw-r--r-- | app/views/public_body/list.rhtml | 2 |
6 files changed, 10 insertions, 18 deletions
diff --git a/app/controllers/admin_public_body_controller.rb b/app/controllers/admin_public_body_controller.rb index 8cb7043a0..d80e2937f 100644 --- a/app/controllers/admin_public_body_controller.rb +++ b/app/controllers/admin_public_body_controller.rb @@ -6,6 +6,8 @@ # # $Id: admin_public_body_controller.rb,v 1.23 2009-08-26 00:58:29 francis Exp $ +require "public_body_categories" + class AdminPublicBodyController < AdminController def index list diff --git a/app/controllers/public_body_controller.rb b/app/controllers/public_body_controller.rb index 79ca58d13..e4f8753af 100644 --- a/app/controllers/public_body_controller.rb +++ b/app/controllers/public_body_controller.rb @@ -99,7 +99,7 @@ class PublicBodyController < ApplicationController @tag = "all" conditions = [locale_condition, @query, @query, @locale] elsif @tag == 'other' - category_list = PublicBodyCategories::CATEGORIES.map{|c| "'"+c+"'"}.join(",") + category_list = PublicBodyCategories::get().tags().map{|c| "'"+c+"'"}.join(",") conditions = [locale_condition + ' AND (select count(*) from has_tag_string_tags where has_tag_string_tags.model_id = public_bodies.id and has_tag_string_tags.model = \'PublicBody\' and has_tag_string_tags.name in (' + category_list + ')) = 0', @query, @query, @locale] @@ -121,7 +121,7 @@ class PublicBodyController < ApplicationController elsif @tag.size == 1 @description = _("beginning with") + " '" + @tag + "'" else - @description = PublicBodyCategories::CATEGORIES_BY_TAG[@tag] + @description = PublicBodyCategories::get().by_tag()[@tag] if @description.nil? @description = @tag end diff --git a/app/models/public_body.rb b/app/models/public_body.rb index 8c34f9e27..430aa8f34 100644 --- a/app/models/public_body.rb +++ b/app/models/public_body.rb @@ -112,16 +112,6 @@ class PublicBody < ActiveRecord::Base end end - # XXX this should be saner; probably implement categories as data - begin - load "public_body_categories_#{I18n.locale.to_s}.rb" - rescue MissingSourceFile - begin - load "public_body_categories_#{I18n.default_locale.to_s}.rb" - rescue MissingSourceFile - load "public_body_categories.rb" - end - end # Set the first letter, which is used for faster queries before_save(:set_first_letter) def set_first_letter @@ -255,8 +245,8 @@ class PublicBody < ActiveRecord::Base types = [] first = true for tag in self.tags - if PublicBodyCategories::CATEGORIES_BY_TAG.include?(tag.name) - desc = PublicBodyCategories::CATEGORY_SINGULAR_BY_TAG[tag.name] + if PublicBodyCategories::get().by_tag().include?(tag.name) + desc = PublicBodyCategories::get().singular_by_tag()[tag.name] if first # terrible that Ruby/Rails doesn't have an equivalent of ucfirst # (capitalize shockingly converts later characters to lowercase) @@ -518,7 +508,7 @@ class PublicBody < ActiveRecord::Base end def notes_without_html # assume notes are reasonably behaved HTML, so just use simple regexp on this - self.notes.gsub(/<\/?[^>]*>/, "") + self.notes.nil? ? '' : self.notes.gsub(/<\/?[^>]*>/, "") end def json_for_api diff --git a/app/views/admin_public_body/_tag_help.rhtml b/app/views/admin_public_body/_tag_help.rhtml index 7954ff992..0d0f84dda 100644 --- a/app/views/admin_public_body/_tag_help.rhtml +++ b/app/views/admin_public_body/_tag_help.rhtml @@ -1,7 +1,7 @@ <div id="tag_help"> <h2>List of tags</h2> <% first_row = true %> - <% for row in PublicBodyCategories::CATEGORIES_WITH_HEADINGS %> + <% for row in PublicBodyCategories::get().with_headings() %> <% if row.instance_of?(Array) %> <% if row[0] != 'other' %> <strong><%= row[0] %></strong>=<%= row[1] %> diff --git a/app/views/admin_public_body/import_csv.rhtml b/app/views/admin_public_body/import_csv.rhtml index 1523ef289..a7a13f477 100644 --- a/app/views/admin_public_body/import_csv.rhtml +++ b/app/views/admin_public_body/import_csv.rhtml @@ -49,7 +49,7 @@ <hr> <p>Standard tags: - <% for category, description in PublicBodyCategories::CATEGORIES_BY_TAG %> + <% for category, description in PublicBodyCategories::get().by_tag() %> <% if category != "other" %> <strong><%= category %></strong>=<%= description %>; <% end %> diff --git a/app/views/public_body/list.rhtml b/app/views/public_body/list.rhtml index e4c803113..81593fcc7 100644 --- a/app/views/public_body/list.rhtml +++ b/app/views/public_body/list.rhtml @@ -7,7 +7,7 @@ </li></ul> <% first_row = true %> - <% for row in PublicBodyCategories::CATEGORIES_WITH_HEADINGS %> + <% for row in PublicBodyCategories::get().with_headings() %> <% if row.instance_of?(Array) %> <li> <%= link_to_unless (@tag == row[0]), row[1], list_public_bodies_url(:tag => row[0]) %> |