super_map 1.0.1 → 1.0.2

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.
Files changed (4) hide show
  1. data/README +6 -4
  2. data/Rakefile +1 -1
  3. data/lib/super_map.rb +12 -5
  4. metadata +7 -7
data/README CHANGED
@@ -37,14 +37,17 @@ We define 2 SuperMaps:
37
37
 
38
38
  end
39
39
 
40
- PAYMENT_TYPES defines options for payment_type field. Some labels are set
40
+ PAYMENT_TYPES defines options for payment_type field. First parameter is a key
41
+ that should be used to access this element instead of using value, which comes
42
+ second as integer (and is possibly stored in database). Note that value might be
43
+ totally random, it just needs be unique across elements. Some labels are set
41
44
  explicitly, for other options key.titleize will be used implicitly. We also
42
45
  defined a custom attribute :tax, which can be accessed using SuperMap#attribute
43
46
  method.
44
47
 
45
48
  PAYMENT_METHODS define translation_scope, which means labels will be present in
46
- translations file (I18n). :paypal will have custom label, which overrides
47
- translations.
49
+ translations file (I18n - note that it's totally optional). :paypal will have
50
+ custom label, which overrides translations.
48
51
 
49
52
  We can than use those SuperMaps to handle attributes for Payment instances:
50
53
 
@@ -63,7 +66,6 @@ We can also use
63
66
  to get the form directly suitable to pass options to f.select helper method.
64
67
 
65
68
 
66
-
67
69
  To make things even simpler, we can use super_mapped_attr:
68
70
 
69
71
  class Payment
data/Rakefile CHANGED
@@ -14,7 +14,7 @@ PKG_FILES = FileList[
14
14
 
15
15
  spec = Gem::Specification.new do |s|
16
16
  s.name = "super_map"
17
- s.version = "1.0.1"
17
+ s.version = "1.0.2"
18
18
  s.author = "Marek Janukowicz"
19
19
  s.email = "marek@janukowicz.net"
20
20
  s.homepage = "http://www.bitbucket.org/starware/super_map"
data/lib/super_map.rb CHANGED
@@ -1,9 +1,11 @@
1
- begin
2
- require 'i18n'
3
- rescue LoadError
4
- nil # We don't really need I18n, but if it's not present, :translation_scope can't be used
1
+ unless defined?( RAILS_ENV ) # We don't need these in Rails, as they are provided there
2
+ begin
3
+ require 'i18n'
4
+ rescue LoadError
5
+ nil # We don't really need I18n, but if it's not present, :translation_scope can't be used
6
+ end
7
+ require 'string_extensions'
5
8
  end
6
- require 'string_extensions'
7
9
  require 'super_mapped_attr'
8
10
 
9
11
  # Two-way hash with additional custom data, autogenerated labels and human
@@ -79,6 +81,11 @@ class SuperMap
79
81
 
80
82
  # Creates new list.
81
83
  # Elements - arrays with arguments for Element.new (key, value, attributes)
84
+ # key - a Symbol representing the element (to be used within the app to
85
+ # access this element)
86
+ # value - integer, string or whatever: real, meaningful value of element
87
+ # attributes - any additional attributes this element might need in form of
88
+ # a Hash
82
89
  # Options (optional last argument):
83
90
  # :translation_scope - where to find translated labels/descriptions
84
91
  # :unknown_value_fatal - whether to raise an exception when accessing
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: super_map
3
3
  version: !ruby/object:Gem::Version
4
- hash: 21
4
+ hash: 19
5
5
  prerelease: false
6
6
  segments:
7
7
  - 1
8
8
  - 0
9
- - 1
10
- version: 1.0.1
9
+ - 2
10
+ version: 1.0.2
11
11
  platform: ruby
12
12
  authors:
13
13
  - Marek Janukowicz
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-09-16 00:00:00 +02:00
18
+ date: 2011-02-23 00:00:00 +01:00
19
19
  default_executable:
20
20
  dependencies: []
21
21
 
@@ -30,12 +30,12 @@ extra_rdoc_files:
30
30
  files:
31
31
  - Rakefile
32
32
  - README
33
- - lib/super_map.rb
34
- - lib/super_mapped_attr.rb
35
33
  - lib/string_extensions.rb
34
+ - lib/super_mapped_attr.rb
35
+ - lib/super_map.rb
36
+ - test/super_map_test.rb
36
37
  - test/super_mapped_attr_test.rb
37
38
  - test/en.yml
38
- - test/super_map_test.rb
39
39
  has_rdoc: true
40
40
  homepage: http://www.bitbucket.org/starware/super_map
41
41
  licenses: []