dyn_meta 0.0.1

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/.document ADDED
@@ -0,0 +1,5 @@
1
+ lib/**/*.rb
2
+ bin/*
3
+ -
4
+ features/**/*.feature
5
+ LICENSE.txt
data/.rspec ADDED
@@ -0,0 +1 @@
1
+ --color
data/Gemfile ADDED
@@ -0,0 +1,17 @@
1
+ source "http://rubygems.org"
2
+ # Add dependencies required to use your gem here.
3
+ # Example:
4
+ # gem "activesupport", ">= 2.3.5"
5
+
6
+ # Add dependencies to develop your gem here.
7
+ # Include everything needed to run rake, tests, features, etc.
8
+
9
+ gem "rails"
10
+
11
+ group :development do
12
+ gem "rspec", "~> 2.1.0"
13
+ gem "cucumber", ">= 0"
14
+ gem "bundler", "~> 1.0.0"
15
+ gem "jeweler", "~> 1.5.1"
16
+ #gem "rcov", ">= 0"
17
+ end
data/Gemfile.lock ADDED
@@ -0,0 +1,100 @@
1
+ GEM
2
+ remote: http://rubygems.org/
3
+ specs:
4
+ abstract (1.0.0)
5
+ actionmailer (3.0.3)
6
+ actionpack (= 3.0.3)
7
+ mail (~> 2.2.9)
8
+ actionpack (3.0.3)
9
+ activemodel (= 3.0.3)
10
+ activesupport (= 3.0.3)
11
+ builder (~> 2.1.2)
12
+ erubis (~> 2.6.6)
13
+ i18n (~> 0.4)
14
+ rack (~> 1.2.1)
15
+ rack-mount (~> 0.6.13)
16
+ rack-test (~> 0.5.6)
17
+ tzinfo (~> 0.3.23)
18
+ activemodel (3.0.3)
19
+ activesupport (= 3.0.3)
20
+ builder (~> 2.1.2)
21
+ i18n (~> 0.4)
22
+ activerecord (3.0.3)
23
+ activemodel (= 3.0.3)
24
+ activesupport (= 3.0.3)
25
+ arel (~> 2.0.2)
26
+ tzinfo (~> 0.3.23)
27
+ activeresource (3.0.3)
28
+ activemodel (= 3.0.3)
29
+ activesupport (= 3.0.3)
30
+ activesupport (3.0.3)
31
+ arel (2.0.6)
32
+ builder (2.1.2)
33
+ cucumber (0.9.4)
34
+ builder (~> 2.1.2)
35
+ diff-lcs (~> 1.1.2)
36
+ gherkin (~> 2.2.9)
37
+ json (~> 1.4.6)
38
+ term-ansicolor (~> 1.0.5)
39
+ diff-lcs (1.1.2)
40
+ erubis (2.6.6)
41
+ abstract (>= 1.0.0)
42
+ gherkin (2.2.9)
43
+ json (~> 1.4.6)
44
+ term-ansicolor (~> 1.0.5)
45
+ git (1.2.5)
46
+ i18n (0.5.0)
47
+ jeweler (1.5.1)
48
+ bundler (~> 1.0.0)
49
+ git (>= 1.2.5)
50
+ rake
51
+ json (1.4.6)
52
+ mail (2.2.12)
53
+ activesupport (>= 2.3.6)
54
+ i18n (>= 0.4.0)
55
+ mime-types (~> 1.16)
56
+ treetop (~> 1.4.8)
57
+ mime-types (1.16)
58
+ polyglot (0.3.1)
59
+ rack (1.2.1)
60
+ rack-mount (0.6.13)
61
+ rack (>= 1.0.0)
62
+ rack-test (0.5.6)
63
+ rack (>= 1.0)
64
+ rails (3.0.3)
65
+ actionmailer (= 3.0.3)
66
+ actionpack (= 3.0.3)
67
+ activerecord (= 3.0.3)
68
+ activeresource (= 3.0.3)
69
+ activesupport (= 3.0.3)
70
+ bundler (~> 1.0)
71
+ railties (= 3.0.3)
72
+ railties (3.0.3)
73
+ actionpack (= 3.0.3)
74
+ activesupport (= 3.0.3)
75
+ rake (>= 0.8.7)
76
+ thor (~> 0.14.4)
77
+ rake (0.8.7)
78
+ rspec (2.1.0)
79
+ rspec-core (~> 2.1.0)
80
+ rspec-expectations (~> 2.1.0)
81
+ rspec-mocks (~> 2.1.0)
82
+ rspec-core (2.1.0)
83
+ rspec-expectations (2.1.0)
84
+ diff-lcs (~> 1.1.2)
85
+ rspec-mocks (2.1.0)
86
+ term-ansicolor (1.0.5)
87
+ thor (0.14.6)
88
+ treetop (1.4.9)
89
+ polyglot (>= 0.3.1)
90
+ tzinfo (0.3.23)
91
+
92
+ PLATFORMS
93
+ ruby
94
+
95
+ DEPENDENCIES
96
+ bundler (~> 1.0.0)
97
+ cucumber
98
+ jeweler (~> 1.5.1)
99
+ rails
100
+ rspec (~> 2.1.0)
data/LICENSE.txt ADDED
@@ -0,0 +1,20 @@
1
+ Copyright (c) 2010 Mike Nelson
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.rdoc ADDED
@@ -0,0 +1,77 @@
1
+ = DynMeta
2
+
3
+ Automate the lookup of page meta information based on the current request. Meta information such as page titles and descriptions can be stored in a translations file rather than floating around in controllers or views.
4
+
5
+ == Installation
6
+
7
+ Add dyn_meta to your Gemfile
8
+
9
+ gem 'dyn_meta', :git => 'git://github.com/mnelson/dyn_meta.git'
10
+
11
+ Install the gem
12
+
13
+ bundle install
14
+
15
+ == Usage
16
+
17
+ Set up your translations as follows:
18
+
19
+ en:
20
+ <meta key pluralized>:
21
+ <controller>:
22
+ <action>:
23
+ <id>: "Some meta value"
24
+
25
+ For example:
26
+
27
+ en:
28
+ page_titles:
29
+ users:
30
+ new: "Create Your Account"
31
+ edit: "Update Your Account"
32
+
33
+ You usually won't go down to the _id_ level but occasionally it's useful:
34
+
35
+ en:
36
+ page_titles:
37
+ pages:
38
+ show:
39
+ tos: "Terms of Service"
40
+ pp: "Privacy Policy"
41
+ about: "About My Site"
42
+
43
+ You can define catch-alls via the _default_ key:
44
+
45
+ en:
46
+ page_titles:
47
+ default: "My Super Site"
48
+ users:
49
+ default: "Manage Your Account"
50
+ new: "Create Your Account"
51
+ edit: "Update Your Account"
52
+
53
+
54
+ DynMeta provides one method *page_detail*. It's both a setter and a getter. Just use the *page_detail* method in your template:
55
+
56
+ <title><%= page_detail(:page_title) %></title>
57
+ <meta name="description" content="<%= page_detail(:page_description) %>" />
58
+
59
+ Alternatively, DynMeta matches any method starting with *page_* so you could just do:
60
+
61
+ <title><%= page_title %></title>
62
+ <meta name="description" content="<%= page_description %>" />
63
+
64
+ Be sure to add the *page_* methods as helpers in your application controller:
65
+
66
+ class ApplicationController < ActionController::Base
67
+
68
+ helper_method :page_title,
69
+ :page_description
70
+
71
+ If you'd like to override meta content you can just pass a value to the page_detail method:
72
+
73
+ def show
74
+ @user = User.find(params[:id])
75
+ page_detail(:page_title, "#{@user.display_name} :: Profile")
76
+ end
77
+
data/Rakefile ADDED
@@ -0,0 +1,55 @@
1
+ require 'rubygems'
2
+ require 'bundler'
3
+ begin
4
+ Bundler.setup(:default, :development)
5
+ rescue Bundler::BundlerError => e
6
+ $stderr.puts e.message
7
+ $stderr.puts "Run `bundle install` to install missing gems"
8
+ exit e.status_code
9
+ end
10
+ require 'rake'
11
+
12
+ require 'jeweler'
13
+ Jeweler::Tasks.new do |gem|
14
+ # gem is a Gem::Specification... see http://docs.rubygems.org/read/chapter/20 for more options
15
+ gem.name = "dyn_meta"
16
+ gem.homepage = "http://github.com/mnelson/dyn_meta"
17
+ gem.license = "MIT"
18
+ gem.summary = %Q{Automate the lookup of page meta information based on the current request}
19
+ gem.description = %Q{Automate the lookup of page meta information based on the current request. Meta information such as page titles and descriptions can be stored in a translations file rather than floating around in controllers or views.}
20
+ gem.email = "mike@mikeonrails.com"
21
+ gem.authors = ["Mike Nelson"]
22
+ # Include your dependencies below. Runtime dependencies are required when using your gem,
23
+ # and development dependencies are only needed for development (ie running rake tasks, tests, etc)
24
+ gem.add_runtime_dependency 'rails', '>= 2.0'
25
+ gem.add_runtime_dependency 'i18n', '> 0.0'
26
+ # gem.add_runtime_dependency 'jabber4r', '> 0.1'
27
+ # gem.add_development_dependency 'rspec', '> 1.2.3'
28
+ end
29
+ Jeweler::RubygemsDotOrgTasks.new
30
+
31
+ require 'rspec/core'
32
+ require 'rspec/core/rake_task'
33
+ RSpec::Core::RakeTask.new(:spec) do |spec|
34
+ spec.pattern = FileList['spec/**/*_spec.rb']
35
+ end
36
+
37
+ RSpec::Core::RakeTask.new(:rcov) do |spec|
38
+ spec.pattern = 'spec/**/*_spec.rb'
39
+ spec.rcov = true
40
+ end
41
+
42
+ require 'cucumber/rake/task'
43
+ Cucumber::Rake::Task.new(:features)
44
+
45
+ task :default => :spec
46
+
47
+ require 'rake/rdoctask'
48
+ Rake::RDocTask.new do |rdoc|
49
+ version = File.exist?('VERSION') ? File.read('VERSION') : ""
50
+
51
+ rdoc.rdoc_dir = 'rdoc'
52
+ rdoc.title = "dyn_meta #{version}"
53
+ rdoc.rdoc_files.include('README*')
54
+ rdoc.rdoc_files.include('lib/**/*.rb')
55
+ end
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 0.0.1
data/dyn_meta.gemspec ADDED
@@ -0,0 +1,79 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = %q{dyn_meta}
8
+ s.version = "0.0.1"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Mike Nelson"]
12
+ s.date = %q{2010-12-17}
13
+ s.description = %q{Automate the lookup of page meta information based on the current request. Meta information such as page titles and descriptions can be stored in a translations file rather than floating around in controllers or views.}
14
+ s.email = %q{mike@mikeonrails.com}
15
+ s.extra_rdoc_files = [
16
+ "LICENSE.txt",
17
+ "README.rdoc"
18
+ ]
19
+ s.files = [
20
+ ".document",
21
+ ".rspec",
22
+ "Gemfile",
23
+ "Gemfile.lock",
24
+ "LICENSE.txt",
25
+ "README.rdoc",
26
+ "Rakefile",
27
+ "VERSION",
28
+ "dyn_meta.gemspec",
29
+ "features/dyn_meta.feature",
30
+ "features/step_definitions/dyn_meta_steps.rb",
31
+ "features/support/env.rb",
32
+ "lib/dyn_meta.rb",
33
+ "lib/dyn_meta/action_controller.rb",
34
+ "spec/dyn_meta_spec.rb",
35
+ "spec/en.yml",
36
+ "spec/spec_helper.rb"
37
+ ]
38
+ s.homepage = %q{http://github.com/mnelson/dyn_meta}
39
+ s.licenses = ["MIT"]
40
+ s.require_paths = ["lib"]
41
+ s.rubygems_version = %q{1.3.7}
42
+ s.summary = %q{Automate the lookup of page meta information based on the current request}
43
+ s.test_files = [
44
+ "spec/dyn_meta_spec.rb",
45
+ "spec/spec_helper.rb"
46
+ ]
47
+
48
+ if s.respond_to? :specification_version then
49
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
50
+ s.specification_version = 3
51
+
52
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
53
+ s.add_runtime_dependency(%q<rails>, [">= 0"])
54
+ s.add_development_dependency(%q<rspec>, ["~> 2.1.0"])
55
+ s.add_development_dependency(%q<cucumber>, [">= 0"])
56
+ s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
57
+ s.add_development_dependency(%q<jeweler>, ["~> 1.5.1"])
58
+ s.add_runtime_dependency(%q<rails>, [">= 2.0"])
59
+ s.add_runtime_dependency(%q<i18n>, ["> 0.0"])
60
+ else
61
+ s.add_dependency(%q<rails>, [">= 0"])
62
+ s.add_dependency(%q<rspec>, ["~> 2.1.0"])
63
+ s.add_dependency(%q<cucumber>, [">= 0"])
64
+ s.add_dependency(%q<bundler>, ["~> 1.0.0"])
65
+ s.add_dependency(%q<jeweler>, ["~> 1.5.1"])
66
+ s.add_dependency(%q<rails>, [">= 2.0"])
67
+ s.add_dependency(%q<i18n>, ["> 0.0"])
68
+ end
69
+ else
70
+ s.add_dependency(%q<rails>, [">= 0"])
71
+ s.add_dependency(%q<rspec>, ["~> 2.1.0"])
72
+ s.add_dependency(%q<cucumber>, [">= 0"])
73
+ s.add_dependency(%q<bundler>, ["~> 1.0.0"])
74
+ s.add_dependency(%q<jeweler>, ["~> 1.5.1"])
75
+ s.add_dependency(%q<rails>, [">= 2.0"])
76
+ s.add_dependency(%q<i18n>, ["> 0.0"])
77
+ end
78
+ end
79
+
@@ -0,0 +1,9 @@
1
+ Feature: something something
2
+ In order to something something
3
+ A user something something
4
+ something something something
5
+
6
+ Scenario: something something
7
+ Given inspiration
8
+ When I create a sweet new gem
9
+ Then everyone should see how awesome I am
File without changes
@@ -0,0 +1,13 @@
1
+ require 'bundler'
2
+ begin
3
+ Bundler.setup(:default, :development)
4
+ rescue Bundler::BundlerError => e
5
+ $stderr.puts e.message
6
+ $stderr.puts "Run `bundle install` to install missing gems"
7
+ exit e.status_code
8
+ end
9
+
10
+ $LOAD_PATH.unshift(File.dirname(__FILE__) + '/../../lib')
11
+ require 'dyn_meta'
12
+
13
+ require 'rspec/expectations'
@@ -0,0 +1,44 @@
1
+ module DynMeta
2
+ module ActionController
3
+
4
+ def self.included(base)
5
+ base.class_eval do
6
+ helper_method :page_detail
7
+ end
8
+ end
9
+
10
+ def method_missing(method_name, *args)
11
+ if method_name.to_s =~ /^page_/
12
+ page_detail(method_name)
13
+ else
14
+ super
15
+ end
16
+ end
17
+
18
+ def respond_to?(method_name)
19
+ method_name.to_s =~ /^page_/ || super
20
+ end
21
+
22
+ def page_detail(name, val = nil)
23
+ in_name = "@#{name}"
24
+ return instance_variable_set(in_name, val) if val.present?
25
+ return instance_variable_get(in_name) if instance_variable_get(in_name)
26
+ trans = I18n.translate(name.to_s.pluralize)
27
+ prms = [:controller, :action, :id]
28
+ hash = trans
29
+ prms.each do |p|
30
+ val = params[p] && hash[params[p].to_s.to_sym] || nil
31
+ if val.nil?
32
+ return hash[:default] || trans[:default] || nil
33
+ elsif val.is_a?(Hash)
34
+ hash = val
35
+ else
36
+ return val
37
+ end
38
+ end
39
+ end
40
+
41
+ end
42
+ end
43
+
44
+ ::ActionController::Base.send(:include, ::DynMeta::ActionController)
data/lib/dyn_meta.rb ADDED
@@ -0,0 +1 @@
1
+ require 'dyn_meta/action_controller'
@@ -0,0 +1,48 @@
1
+ require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
2
+
3
+
4
+ describe "DynMeta" do
5
+
6
+ it "should have translations loaded" do
7
+ I18n.translate(:foo).should eql('bar')
8
+ end
9
+
10
+ it "should have dyn_meta methods included" do
11
+ a = controller
12
+ a.respond_to?(:page_detail).should be_true
13
+ a.respond_to?(:page_title).should be_true
14
+ end
15
+
16
+ it "should define instance variables when they don't exist" do
17
+ a = controller
18
+ a.page_detail(:page_title, 'value')
19
+ a.instance_variable_get('@page_title').should eql('value')
20
+ end
21
+
22
+ it "should return nil when trans hash doesn't exist" do
23
+ a = controller
24
+ a.page_description.should be_nil
25
+ end
26
+
27
+ it "should look at controller action and id for translations" do
28
+ a = controller(:controller => 'users', :action => 'edit')
29
+ a.page_title.should eql("Update your account")
30
+ end
31
+
32
+ it "should fall back to default values" do
33
+ a = controller
34
+ a.page_title.should eql("Users, this is for you")
35
+ a.params = {:controller => 'organizations'}
36
+ a.page_title.should eql("My Great Startup Idea")
37
+ end
38
+
39
+
40
+ private
41
+
42
+ def controller(params = {:controller => 'users'})
43
+ a = ActionController::Base.new
44
+ a.params = params
45
+ a
46
+ end
47
+
48
+ end
data/spec/en.yml ADDED
@@ -0,0 +1,7 @@
1
+ en:
2
+ foo: bar
3
+ page_titles:
4
+ default: "My Great Startup Idea"
5
+ users:
6
+ default: "Users, this is for you"
7
+ edit: "Update your account"
@@ -0,0 +1,16 @@
1
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
2
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
3
+ require 'rspec'
4
+ require 'rubygems'
5
+ require 'rails/all'
6
+ require 'dyn_meta'
7
+
8
+ # Requires supporting files with custom matchers and macros, etc,
9
+ # in ./support/ and its subdirectories.
10
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f}
11
+
12
+ I18n.backend.send(:load_file, File.join(File.dirname(__FILE__), 'en.yml'))
13
+
14
+ RSpec.configure do |config|
15
+
16
+ end
metadata ADDED
@@ -0,0 +1,190 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: dyn_meta
3
+ version: !ruby/object:Gem::Version
4
+ hash: 29
5
+ prerelease: false
6
+ segments:
7
+ - 0
8
+ - 0
9
+ - 1
10
+ version: 0.0.1
11
+ platform: ruby
12
+ authors:
13
+ - Mike Nelson
14
+ autorequire:
15
+ bindir: bin
16
+ cert_chain: []
17
+
18
+ date: 2010-12-17 00:00:00 -05:00
19
+ default_executable:
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
22
+ prerelease: false
23
+ type: :runtime
24
+ name: rails
25
+ version_requirements: &id001 !ruby/object:Gem::Requirement
26
+ none: false
27
+ requirements:
28
+ - - ">="
29
+ - !ruby/object:Gem::Version
30
+ hash: 3
31
+ segments:
32
+ - 0
33
+ version: "0"
34
+ requirement: *id001
35
+ - !ruby/object:Gem::Dependency
36
+ prerelease: false
37
+ type: :development
38
+ name: rspec
39
+ version_requirements: &id002 !ruby/object:Gem::Requirement
40
+ none: false
41
+ requirements:
42
+ - - ~>
43
+ - !ruby/object:Gem::Version
44
+ hash: 11
45
+ segments:
46
+ - 2
47
+ - 1
48
+ - 0
49
+ version: 2.1.0
50
+ requirement: *id002
51
+ - !ruby/object:Gem::Dependency
52
+ prerelease: false
53
+ type: :development
54
+ name: cucumber
55
+ version_requirements: &id003 !ruby/object:Gem::Requirement
56
+ none: false
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ hash: 3
61
+ segments:
62
+ - 0
63
+ version: "0"
64
+ requirement: *id003
65
+ - !ruby/object:Gem::Dependency
66
+ prerelease: false
67
+ type: :development
68
+ name: bundler
69
+ version_requirements: &id004 !ruby/object:Gem::Requirement
70
+ none: false
71
+ requirements:
72
+ - - ~>
73
+ - !ruby/object:Gem::Version
74
+ hash: 23
75
+ segments:
76
+ - 1
77
+ - 0
78
+ - 0
79
+ version: 1.0.0
80
+ requirement: *id004
81
+ - !ruby/object:Gem::Dependency
82
+ prerelease: false
83
+ type: :development
84
+ name: jeweler
85
+ version_requirements: &id005 !ruby/object:Gem::Requirement
86
+ none: false
87
+ requirements:
88
+ - - ~>
89
+ - !ruby/object:Gem::Version
90
+ hash: 1
91
+ segments:
92
+ - 1
93
+ - 5
94
+ - 1
95
+ version: 1.5.1
96
+ requirement: *id005
97
+ - !ruby/object:Gem::Dependency
98
+ prerelease: false
99
+ type: :runtime
100
+ name: rails
101
+ version_requirements: &id006 !ruby/object:Gem::Requirement
102
+ none: false
103
+ requirements:
104
+ - - ">="
105
+ - !ruby/object:Gem::Version
106
+ hash: 3
107
+ segments:
108
+ - 2
109
+ - 0
110
+ version: "2.0"
111
+ requirement: *id006
112
+ - !ruby/object:Gem::Dependency
113
+ prerelease: false
114
+ type: :runtime
115
+ name: i18n
116
+ version_requirements: &id007 !ruby/object:Gem::Requirement
117
+ none: false
118
+ requirements:
119
+ - - ">"
120
+ - !ruby/object:Gem::Version
121
+ hash: 11
122
+ segments:
123
+ - 0
124
+ - 0
125
+ version: "0.0"
126
+ requirement: *id007
127
+ description: Automate the lookup of page meta information based on the current request. Meta information such as page titles and descriptions can be stored in a translations file rather than floating around in controllers or views.
128
+ email: mike@mikeonrails.com
129
+ executables: []
130
+
131
+ extensions: []
132
+
133
+ extra_rdoc_files:
134
+ - LICENSE.txt
135
+ - README.rdoc
136
+ files:
137
+ - .document
138
+ - .rspec
139
+ - Gemfile
140
+ - Gemfile.lock
141
+ - LICENSE.txt
142
+ - README.rdoc
143
+ - Rakefile
144
+ - VERSION
145
+ - dyn_meta.gemspec
146
+ - features/dyn_meta.feature
147
+ - features/step_definitions/dyn_meta_steps.rb
148
+ - features/support/env.rb
149
+ - lib/dyn_meta.rb
150
+ - lib/dyn_meta/action_controller.rb
151
+ - spec/dyn_meta_spec.rb
152
+ - spec/en.yml
153
+ - spec/spec_helper.rb
154
+ has_rdoc: true
155
+ homepage: http://github.com/mnelson/dyn_meta
156
+ licenses:
157
+ - MIT
158
+ post_install_message:
159
+ rdoc_options: []
160
+
161
+ require_paths:
162
+ - lib
163
+ required_ruby_version: !ruby/object:Gem::Requirement
164
+ none: false
165
+ requirements:
166
+ - - ">="
167
+ - !ruby/object:Gem::Version
168
+ hash: 3
169
+ segments:
170
+ - 0
171
+ version: "0"
172
+ required_rubygems_version: !ruby/object:Gem::Requirement
173
+ none: false
174
+ requirements:
175
+ - - ">="
176
+ - !ruby/object:Gem::Version
177
+ hash: 3
178
+ segments:
179
+ - 0
180
+ version: "0"
181
+ requirements: []
182
+
183
+ rubyforge_project:
184
+ rubygems_version: 1.3.7
185
+ signing_key:
186
+ specification_version: 3
187
+ summary: Automate the lookup of page meta information based on the current request
188
+ test_files:
189
+ - spec/dyn_meta_spec.rb
190
+ - spec/spec_helper.rb