person-name 0.2.11 → 0.2.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/Gemfile CHANGED
@@ -2,3 +2,9 @@ source "http://rubygems.org"
2
2
 
3
3
  # Specify your gem's dependencies in person-name.gemspec
4
4
  gemspec
5
+
6
+ gem "rails"
7
+ gem "activerecord"
8
+
9
+ gem 'sqlite3'
10
+ gem 'rspec', "~> 2.0"
data/README.markdown CHANGED
@@ -7,6 +7,8 @@ If you have to fill in a name for somebody, you have to display all those fields
7
7
  The goal is to make one field that can split up the name and assign it to the correct fields automatically.
8
8
  You can also still use the more precise input if necessary.
9
9
 
10
+ [![build status](http://travis-ci.org/matthijsgroen/person-name.png)](http://travis-ci.org/matthijsgroen/person-name)
11
+
10
12
  Installation
11
13
  ============
12
14
  in your Gemfile:
data/Rakefile CHANGED
@@ -1,2 +1,9 @@
1
1
  require 'bundler'
2
2
  Bundler::GemHelper.install_tasks
3
+
4
+ require 'rspec/core/rake_task'
5
+
6
+ RSpec::Core::RakeTask.new('spec')
7
+
8
+ # If you want to make this the default task
9
+ task :default => :spec
data/lib/person-name.rb CHANGED
@@ -1,4 +1,5 @@
1
1
  require "active_record"
2
+ require "active_support"
2
3
 
3
4
  $LOAD_PATH.unshift(File.dirname(__FILE__))
4
5
 
@@ -1,9 +1,12 @@
1
+ require "active_support/core_ext/class/inheritable_attributes"
2
+
1
3
  module PersonName
2
4
 
3
5
  module ActiveRecord
4
6
 
5
7
  def self.included(base) # :nodoc:
6
8
  base.extend ClassMethods
9
+ base.class_attribute :name_types
7
10
  end
8
11
 
9
12
  module ClassMethods
@@ -17,10 +20,9 @@ module PersonName
17
20
  name_types << :name if name_types.empty?
18
21
 
19
22
  if has_person_names?
20
- write_inheritable_attribute(:name_types, (self.name_types + name_types).uniq)
23
+ self.name_types = (self.name_types + name_types).uniq
21
24
  else
22
- write_inheritable_attribute(:name_types, name_types)
23
- class_inheritable_reader(:name_types)
25
+ self.name_types = name_types
24
26
 
25
27
  class_eval do
26
28
  def self.has_person_names?
@@ -102,7 +104,7 @@ module PersonName
102
104
  # the field should make sure the values are comparable (eg. the separated values combined
103
105
  # should be equal to the aggregated one). If this is the case, the separated fields
104
106
  # will rule over the aggregated one, since it is more detailed and adds up to the same result.
105
- def attributes=(new_attributes, guard_protected_attributes = true)
107
+ def attributes=(new_attributes)
106
108
  return unless new_attributes.is_a?(Hash)
107
109
  attributes = new_attributes.stringify_keys
108
110
 
@@ -152,7 +154,7 @@ module PersonName
152
154
  end
153
155
  end
154
156
 
155
- super attributes, guard_protected_attributes
157
+ super attributes
156
158
  end
157
159
 
158
160
  private
@@ -155,7 +155,7 @@ module PersonName
155
155
 
156
156
  part_score = O[part.to_sym]
157
157
  if part_values.include? value
158
- part_score = O[:first_name] if stage == O[:prefix] and part = :middle_name
158
+ part_score = O[:first_name] if stage == O[:prefix] and part == :middle_name
159
159
  new_stage = part_score if part_score > new_stage
160
160
  return new_stage
161
161
  end
@@ -1,5 +1,5 @@
1
1
  module PersonName
2
2
 
3
- VERSION = "0.2.11"
3
+ VERSION = "0.2.12"
4
4
 
5
5
  end
data/spec/spec_helper.rb CHANGED
@@ -32,6 +32,7 @@ end
32
32
  ENV['DB'] ||= 'sqlite3'
33
33
 
34
34
  database_yml = File.expand_path('../database.yml', __FILE__)
35
+ database_yml = File.expand_path('../database.yml.sample', __FILE__) unless File.exists?(database_yml)
35
36
  if File.exists?(database_yml)
36
37
  active_record_configuration = YAML.load_file(database_yml)[ENV['DB']]
37
38
 
metadata CHANGED
@@ -1,13 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: person-name
3
3
  version: !ruby/object:Gem::Version
4
- hash: 1
5
4
  prerelease:
6
- segments:
7
- - 0
8
- - 2
9
- - 11
10
- version: 0.2.11
5
+ version: 0.2.12
11
6
  platform: ruby
12
7
  authors:
13
8
  - Matthijs Groen
@@ -15,8 +10,7 @@ autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
12
 
18
- date: 2011-02-13 00:00:00 +01:00
19
- default_executable:
13
+ date: 2011-09-19 00:00:00 Z
20
14
  dependencies: []
21
15
 
22
16
  description: Manages all person name fields (prefix, first name, middle name, intercalation, last name, suffix)
@@ -49,7 +43,6 @@ files:
49
43
  - spec/person_name/has_person_name_spec.rb
50
44
  - spec/schema.rb
51
45
  - spec/spec_helper.rb
52
- has_rdoc: true
53
46
  homepage: http://github.com/matthijsgroen/person-name
54
47
  licenses: []
55
48
 
@@ -63,23 +56,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
63
56
  requirements:
64
57
  - - ">="
65
58
  - !ruby/object:Gem::Version
66
- hash: 3
67
- segments:
68
- - 0
69
59
  version: "0"
70
60
  required_rubygems_version: !ruby/object:Gem::Requirement
71
61
  none: false
72
62
  requirements:
73
63
  - - ">="
74
64
  - !ruby/object:Gem::Version
75
- hash: 3
76
- segments:
77
- - 0
78
65
  version: "0"
79
66
  requirements: []
80
67
 
81
68
  rubyforge_project: person-name
82
- rubygems_version: 1.4.1
69
+ rubygems_version: 1.8.10
83
70
  signing_key:
84
71
  specification_version: 3
85
72
  summary: Easy editing of person names.