aboutsummaryrefslogtreecommitdiffstats
path: root/app
diff options
context:
space:
mode:
Diffstat (limited to 'app')
-rw-r--r--app/controllers/admin_public_body_controller.rb2
-rw-r--r--app/controllers/public_body_controller.rb4
-rw-r--r--app/models/public_body.rb16
-rw-r--r--app/views/admin_public_body/_tag_help.rhtml2
-rw-r--r--app/views/admin_public_body/import_csv.rhtml2
-rw-r--r--app/views/public_body/list.rhtml2
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]) %>