ratnikov-common-extensions 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/README.rdoc +0 -0
- data/Rakefile +33 -0
- data/lib/common-extensions.rb +4 -0
- data/lib/common-extensions/tag_metadata_extension.rb +32 -0
- metadata +58 -0
data/README.rdoc
ADDED
File without changes
|
data/Rakefile
ADDED
@@ -0,0 +1,33 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
require 'rake'
|
4
|
+
require 'rake/testtask'
|
5
|
+
|
6
|
+
Rake::TestTask.new(:test) do |task|
|
7
|
+
task.libs << "lib"
|
8
|
+
task.libs << "test"
|
9
|
+
task.pattern = "test/**/*_test.rb"
|
10
|
+
task.verbose = false
|
11
|
+
end
|
12
|
+
|
13
|
+
desc "Run the test suite"
|
14
|
+
task :default => ['test']
|
15
|
+
|
16
|
+
gem_spec = Gem::Specification.new do |gem_spec|
|
17
|
+
gem_spec.name = "common-extensions"
|
18
|
+
gem_spec.version = "0.1"
|
19
|
+
gem_spec.summary = "Commonly used extensions bunched up together"
|
20
|
+
gem_spec.email = "dmitryr@webitects.com"
|
21
|
+
gem_spec.homepage = "http://github.com/ratnikov/common-extensions"
|
22
|
+
gem_spec.description = "Commonly used extensions bunched up together"
|
23
|
+
gem_spec.authors = [ "Dmitry Ratnikov" ]
|
24
|
+
gem_spec.files = FileList["[A-Z]*", "{lib}/**/*"]
|
25
|
+
end
|
26
|
+
|
27
|
+
desc "Generate a gemspec file"
|
28
|
+
task :gemspec do
|
29
|
+
File.open("#{gem_spec.name}.gemspec", 'w') do |f|
|
30
|
+
f.write gem_spec.to_yaml
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
@@ -0,0 +1,32 @@
|
|
1
|
+
require 'action_view/helpers/tag_helper'
|
2
|
+
|
3
|
+
module TagMetadataExtension
|
4
|
+
def self.included base
|
5
|
+
base.class_eval do
|
6
|
+
alias_method_chain :content_tag, :metadata
|
7
|
+
end
|
8
|
+
end
|
9
|
+
|
10
|
+
def content_tag_with_metadata name, options_with_block = nil, options_without_block = nil, escape = true, &block
|
11
|
+
if block.blank?
|
12
|
+
TagMetadataExtension.parse_metadata! options_without_block
|
13
|
+
else
|
14
|
+
TagMetadataExtension.parse_metadata! options_with_block
|
15
|
+
end
|
16
|
+
|
17
|
+
content_tag_without_metadata name, options_with_block, options_without_block, escape, &block
|
18
|
+
end
|
19
|
+
|
20
|
+
def parse_metadata! options
|
21
|
+
return if options.nil?
|
22
|
+
if (metadata = options.delete(:metadata))
|
23
|
+
data = options.delete(:data)
|
24
|
+
options.merge! :data => [ data, metadata.to_json.gsub('"', "'") ].compact.join(' ')
|
25
|
+
end
|
26
|
+
options
|
27
|
+
end
|
28
|
+
|
29
|
+
module_function :parse_metadata!
|
30
|
+
end
|
31
|
+
|
32
|
+
ActionView::Helpers::TagHelper.send(:include, TagMetadataExtension)
|
metadata
ADDED
@@ -0,0 +1,58 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: ratnikov-common-extensions
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: "0.1"
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Dmitry Ratnikov
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
|
12
|
+
date: 2009-08-03 22:00:00 -07:00
|
13
|
+
default_executable:
|
14
|
+
dependencies: []
|
15
|
+
|
16
|
+
description: Commonly used extensions bunched up together
|
17
|
+
email: dmitryr@webitects.com
|
18
|
+
executables: []
|
19
|
+
|
20
|
+
extensions: []
|
21
|
+
|
22
|
+
extra_rdoc_files: []
|
23
|
+
|
24
|
+
files:
|
25
|
+
- README.rdoc
|
26
|
+
- Rakefile
|
27
|
+
- lib/common-extensions
|
28
|
+
- lib/common-extensions/tag_metadata_extension.rb
|
29
|
+
- lib/common-extensions.rb
|
30
|
+
has_rdoc: false
|
31
|
+
homepage: http://github.com/ratnikov/common-extensions
|
32
|
+
licenses:
|
33
|
+
post_install_message:
|
34
|
+
rdoc_options: []
|
35
|
+
|
36
|
+
require_paths:
|
37
|
+
- lib
|
38
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
39
|
+
requirements:
|
40
|
+
- - ">="
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
version: "0"
|
43
|
+
version:
|
44
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
45
|
+
requirements:
|
46
|
+
- - ">="
|
47
|
+
- !ruby/object:Gem::Version
|
48
|
+
version: "0"
|
49
|
+
version:
|
50
|
+
requirements: []
|
51
|
+
|
52
|
+
rubyforge_project:
|
53
|
+
rubygems_version: 1.3.5
|
54
|
+
signing_key:
|
55
|
+
specification_version: 2
|
56
|
+
summary: Commonly used extensions bunched up together
|
57
|
+
test_files: []
|
58
|
+
|