world-flags 0.1.1 → 0.1.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.
data/README.textile CHANGED
@@ -4,11 +4,15 @@ Includes css files for size 16 and 32 pixels and have all the worlds' flags.
4
4
 
5
5
  h2. Configuration
6
6
 
7
- In you asset application config:
7
+ In you asset application.css manifest file:
8
8
 
9
- require flags/flags16
9
+ */
10
+ *= require_self
11
+ *= require_tree .
12
+ *= require flags/flags32
13
+ */
10
14
 
11
- h2. Example usage:
15
+ h2. Alternative config
12
16
 
13
17
  Note that the ruby examples uses HAML syntax
14
18
 
@@ -20,6 +24,12 @@ or using a helper
20
24
 
21
25
  = use_flags(16)
22
26
 
27
+ Alternatively for the 32 width flags
28
+
29
+ = use_flags 32
30
+
31
+ h2. Rendering
32
+
23
33
  Flags will be rendered in HTML as:
24
34
 
25
35
  <pre>
@@ -33,14 +43,86 @@ Flags will be rendered in HTML as:
33
43
 
34
44
  The countries corresponding to the codes can be found at "http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2":http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2
35
45
 
46
+ h2. Use
47
+
36
48
  You can also use built in helper methods:
37
49
 
38
- = flags_list 16 do
50
+ = flag_list 16 do
39
51
  = flags :ar => 'Argentina', :en => 'England'
40
52
 
41
53
  Alternatively
42
54
 
43
55
  = flags_list 32 do
44
- = flag :ar, 'Argentina'
56
+ = flag(:ar, 'Argentina') + flag(:en, 'England')
57
+
58
+ For use with tooltips (see example below):
59
+
60
+ = flags_list 32 do
61
+ = flags_title(:ar => 'Argentina', :br => 'Brazil') + flag_title(:en, 'England')
62
+
63
+ The flag_title will render the following list item:
64
+
65
+ <li class="flag ar" title="Argentina">&nbsp;</li>
66
+
67
+ The &nbsp; is needed in order for the background (flag icon) to have something to be displayed against.
68
+
69
+ h2. Nice effects
70
+
71
+ CSS config:
72
+
73
+ ul.f32 {
74
+ list-style-type: none;
75
+ padding: 0;
76
+ margin-left: 0;
77
+
78
+ li.flag {
79
+ float:left;
80
+ padding-bottom: 10px;
81
+ padding-right: 32px;
82
+ cursor: pointer;
83
+ }
84
+ }
85
+
86
+ #languages {
87
+ float: right;
88
+ }
89
+
90
+ p.clear {
91
+ clear:both;
92
+ }
93
+
94
+ .tooltip {
95
+ display:none;
96
+ background: white;
97
+ border: 1px solid black;
98
+ font-size:14px;
99
+ font-weight: bold;
100
+ text-align: center;
101
+ height:16px;
102
+ width:120px;
103
+ padding:10px;
104
+ color: black;
105
+ }
106
+
107
+ Tooltip script:
108
+
109
+ http://jquerytools.org/demos/tooltip/index.html
110
+
111
+ $("li.flag[title]").tooltip()
112
+
113
+ Layout file:
114
+
115
+ %body
116
+ .main
117
+ = link_to "Sign un", new_user_session_path
118
+ = link_to "Sign up", new_user_registration_path
119
+
120
+ #languages
121
+ %ul.f32
122
+ %li.flag.ar{:title => 'Argentina'}
123
+ &nbsp;
124
+ %li.flag.en{:title => 'England'}
125
+ &nbsp;
126
+ %p.clear
127
+ = yield
45
128
 
46
- See "the cheese wiki":http://www.cheesewiki.com/ for an example
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.1
1
+ 0.1.2
data/lib/world-flags.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  require "world_flags/world_flags_helper"
2
2
  require "rails"
3
- require 'rails_plugin/engine'
3
+ require 'world_flags/rails_plugin/engine'
4
4
 
5
5
  ActionView::Base.send :include, WorldFlagsHelper
@@ -1,6 +1,7 @@
1
1
  module WorldFlags
2
2
  module Rails
3
3
  class Engine < ::Rails::Engine
4
+ puts "WorldFlags engine loaded"
4
5
  end
5
6
  end
6
7
  end
@@ -6,8 +6,10 @@ module WorldFlagsHelper
6
6
  def flags_list size = 16, &block
7
7
  raise "Missing block" unless block_given?
8
8
  raise "Supported sizes are only #{WorldFlagsHelper.flag_sizes}" unless WorldFlagsHelper.flag_sizes.include?(size.to_i)
9
- content_tag :ul, yield, :class => "f#{size}"
9
+ content = capture(&block)
10
+ content_tag :ul, content, :class => "f#{size}"
10
11
  end
12
+ alias_method :flag_list, :flags_list
11
13
 
12
14
  def flags flags_hash
13
15
  flags_hash.inject("") do |res, element|
@@ -15,11 +17,21 @@ module WorldFlagsHelper
15
17
  end.html_safe
16
18
  end
17
19
 
20
+ def flags_title flags_hash
21
+ flags_hash.inject("") do |res, element|
22
+ res << flag_title(element.first, element.last)
23
+ end.html_safe
24
+ end
25
+
18
26
  def flag code, name
19
27
  content_tag :li, name.html_safe, :class => "flag #{code}"
20
28
  end
21
29
 
30
+ def flag_title code, name
31
+ content_tag :li, '&nbsp;'.html_safe, :class => "flag #{code}", :title => name
32
+ end
33
+
22
34
  def use_flags size = 16
23
- stylesheet_link_tag "flags#{size}"
35
+ stylesheet_link_tag "flags/flags#{size}"
24
36
  end
25
37
  end
@@ -10,6 +10,12 @@ describe WorldFlagsHelper do
10
10
  output.should == "<ul class=\"f16\"></ul>"
11
11
  end
12
12
 
13
+ it "should work with alias :flag_list" do
14
+ output = flag_list do
15
+ end
16
+ output.should == "<ul class=\"f16\"></ul>"
17
+ end
18
+
13
19
  it "should set size to 16 or 32" do
14
20
  lambda do flags_list(8) { }
15
21
  end.should raise_error
@@ -28,6 +34,18 @@ describe WorldFlagsHelper do
28
34
  output.should == "<ul class=\"f32\"><li class=\"flag ar\">Argentina</li><li class=\"flag en\">England</li></ul>"
29
35
  end
30
36
 
37
+ it "should list flags" do
38
+ output = flag_title :ar, 'Argentina'
39
+ output.should == "<li class=\"flag ar\" title=\"Argentina\">&nbsp;</li>"
40
+ end
41
+
42
+ it "should list flags" do
43
+ output = flags_list 32 do
44
+ flags_title :ar => 'Argentina'
45
+ end
46
+ output.should == "<ul class=\"f32\"><li class=\"flag ar\" title=\"Argentina\">&nbsp;</li></ul>"
47
+ end
48
+
31
49
  it "should list flags combined" do
32
50
  output = flags_list 32 do
33
51
  [flags(:ar => 'Argentina', :en => 'England'), flag(:br, 'Brazil')].join.html_safe
@@ -1,4 +1,4 @@
1
- .f16 .flag{background:url(/images/flags/flags16.png) no-repeat;}
1
+ .f16 .flag{background:url(<%= asset_path 'flags/flags16.png' %>) no-repeat;}
2
2
  .f16 ._African_Union(OAS){background-position:0 -0px;}
3
3
  .f16 ._Arab_League{background-position:0 -16px;}
4
4
  .f16 ._ASEAN{background-position:0 -32px;}
@@ -1,6 +1,6 @@
1
1
  .f16 {
2
2
 
3
- .flag{background:url(/images/flags/flags16.png) no-repeat;}
3
+ .flag{background:url(<%= asset_path 'flags/flags16.png' %>) no-repeat;}
4
4
 
5
5
  ._African_Union(OAS){background-position:0 -0px;}
6
6
  ._Arab_League{background-position:0 -16px;}
@@ -1,4 +1,4 @@
1
- .f32 .flag{background:url(/images/flags/flags32.png) no-repeat;}
1
+ .f32 .flag{background:url(<%= asset_path 'flags/flags32.png' %>) no-repeat;}
2
2
  .f32 ._African_Union(OAS){background-position:0 -0px;}
3
3
  .f32 ._Arab_League{background-position:0 -32px;}
4
4
  .f32 ._ASEAN{background-position:0 -64px;}
@@ -1,6 +1,6 @@
1
1
  .f32 {
2
2
 
3
- .flag{background:url(/images/flags/flags32.png) no-repeat;}
3
+ .flag{background:url(<%= asset_path 'flags/flags32.png' %>) no-repeat;}
4
4
 
5
5
  ._African_Union(OAS){background-position:0 -0px;}
6
6
  ._Arab_League{background-position:0 -32px;}
data/world-flags.gemspec CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "world-flags"
8
- s.version = "0.1.1"
8
+ s.version = "0.1.2"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Kristian Mandrup"]
@@ -25,17 +25,17 @@ Gem::Specification.new do |s|
25
25
  "README.textile",
26
26
  "Rakefile",
27
27
  "VERSION",
28
- "lib/rails_plugin/engine.rb",
29
28
  "lib/world-flags.rb",
29
+ "lib/world_flags/rails_plugin/engine.rb",
30
30
  "lib/world_flags/world_flags_helper.rb",
31
31
  "spec/spec_helper.rb",
32
32
  "spec/world-flags_spec.rb",
33
33
  "vendor/assets/images/flags/flags16.png",
34
34
  "vendor/assets/images/flags/flags32.png",
35
- "vendor/assets/stylesheets/flags/flags16.css",
36
- "vendor/assets/stylesheets/flags/flags16.scss",
37
- "vendor/assets/stylesheets/flags/flags32.css",
38
- "vendor/assets/stylesheets/flags/flags32.scss",
35
+ "vendor/assets/stylesheets/flags/flags16.css.erb",
36
+ "vendor/assets/stylesheets/flags/flags16.css.scss.erb",
37
+ "vendor/assets/stylesheets/flags/flags32.css.erb",
38
+ "vendor/assets/stylesheets/flags/flags32.css.scss.erb",
39
39
  "world-flags.gemspec"
40
40
  ]
41
41
  s.homepage = "http://github.com/kristianmandrup/world-flags"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: world-flags
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2012-03-20 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rspec
16
- requirement: &70365288406560 !ruby/object:Gem::Requirement
16
+ requirement: &70254344812800 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 2.8.0
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *70365288406560
24
+ version_requirements: *70254344812800
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: rdoc
27
- requirement: &70365288427120 !ruby/object:Gem::Requirement
27
+ requirement: &70254344823820 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '3.12'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *70365288427120
35
+ version_requirements: *70254344823820
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: bundler
38
- requirement: &70365288425660 !ruby/object:Gem::Requirement
38
+ requirement: &70254344822400 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: 1.0.0
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *70365288425660
46
+ version_requirements: *70254344822400
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: jeweler
49
- requirement: &70365288423940 !ruby/object:Gem::Requirement
49
+ requirement: &70254344820480 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 1.8.3
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *70365288423940
57
+ version_requirements: *70254344820480
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: simplecov
60
- requirement: &70365288421960 !ruby/object:Gem::Requirement
60
+ requirement: &70254344819120 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,7 +65,7 @@ dependencies:
65
65
  version: '0.5'
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *70365288421960
68
+ version_requirements: *70254344819120
69
69
  description: Use world flag icons in your Rails app
70
70
  email: kmandrup@gmail.com
71
71
  executables: []
@@ -82,17 +82,17 @@ files:
82
82
  - README.textile
83
83
  - Rakefile
84
84
  - VERSION
85
- - lib/rails_plugin/engine.rb
86
85
  - lib/world-flags.rb
86
+ - lib/world_flags/rails_plugin/engine.rb
87
87
  - lib/world_flags/world_flags_helper.rb
88
88
  - spec/spec_helper.rb
89
89
  - spec/world-flags_spec.rb
90
90
  - vendor/assets/images/flags/flags16.png
91
91
  - vendor/assets/images/flags/flags32.png
92
- - vendor/assets/stylesheets/flags/flags16.css
93
- - vendor/assets/stylesheets/flags/flags16.scss
94
- - vendor/assets/stylesheets/flags/flags32.css
95
- - vendor/assets/stylesheets/flags/flags32.scss
92
+ - vendor/assets/stylesheets/flags/flags16.css.erb
93
+ - vendor/assets/stylesheets/flags/flags16.css.scss.erb
94
+ - vendor/assets/stylesheets/flags/flags32.css.erb
95
+ - vendor/assets/stylesheets/flags/flags32.css.scss.erb
96
96
  - world-flags.gemspec
97
97
  homepage: http://github.com/kristianmandrup/world-flags
98
98
  licenses:
@@ -109,7 +109,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
109
109
  version: '0'
110
110
  segments:
111
111
  - 0
112
- hash: -4338299657571122949
112
+ hash: 1179484573373061656
113
113
  required_rubygems_version: !ruby/object:Gem::Requirement
114
114
  none: false
115
115
  requirements: