tiles-rails 0.0.1 → 0.1.0

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.md CHANGED
@@ -1,6 +1,6 @@
1
- # Windows 8 Tile Helpers [![Build Status](https://secure.travis-ci.org/unindented/tiles-rails.png)](http://travis-ci.org/unindented/tiles-rails) [![Dependency Status](https://gemnasium.com/unindented/tiles-rails.png)](https://gemnasium.com/unindented/tiles-rails)
1
+ # Windows 8.1 Tile Helpers [![Build Status](https://secure.travis-ci.org/unindented/tiles-rails.png)](http://travis-ci.org/unindented/tiles-rails) [![Dependency Status](https://gemnasium.com/unindented/tiles-rails.png)](https://gemnasium.com/unindented/tiles-rails)
2
2
 
3
- Adds easy defaults for writing Windows 8 tile functionality on top of Rails.
3
+ Adds easy defaults for writing Windows 8.1 tile functionality on top of Rails.
4
4
 
5
5
  ## Installation
6
6
 
@@ -2,16 +2,10 @@ module Tiles::Rails
2
2
  module Helpers
3
3
 
4
4
  def tile_feed(options = {}, &block)
5
- if options[:schema_date]
6
- options[:schema_date] = options[:schema_date].strftime('%Y-%m-%d') if options[:schema_date].respond_to?(:strftime)
7
- else
8
- options[:schema_date] = '2013'
9
- end
10
-
11
5
  xml = options.delete(:xml) || eval('xml', block.binding)
12
6
  xml.instruct!
13
7
  if options[:instruct]
14
- options[:instruct].each do |target,attrs|
8
+ options.delete(:instruct).each do |target, attrs|
15
9
  if attrs.respond_to?(:keys)
16
10
  xml.instruct!(target, attrs)
17
11
  elsif attrs.respond_to?(:each)
@@ -25,9 +19,38 @@ module Tiles::Rails
25
19
 
26
20
  xml.tile do
27
21
  xml.visual(feed_opts) do
28
- yield xml
22
+ yield TileFeedBuilder.new(xml, self, options)
23
+ end
24
+ end
25
+ end
26
+
27
+ class TileBuilder
28
+
29
+ def initialize(xml)
30
+ @xml = xml
31
+ end
32
+
33
+ private
34
+
35
+ def method_missing(method, *arguments, &block)
36
+ @xml.__send__(method, *arguments, &block)
37
+ end
38
+
39
+ end
40
+
41
+ class TileFeedBuilder < TileBuilder
42
+
43
+ def initialize(xml, view, feed_options = {})
44
+ @xml, @view, @feed_options = xml, view, feed_options
45
+ end
46
+
47
+ def binding(options = {})
48
+ default_opts = {branding: :logo}
49
+ @xml.binding(default_opts.merge!(options)) do
50
+ yield TileBuilder.new(@xml)
29
51
  end
30
52
  end
53
+
31
54
  end
32
55
 
33
56
  end
@@ -1,10 +1,10 @@
1
1
  module Tiles::Rails
2
2
  class Railtie < ::Rails::Railtie
3
3
 
4
- initializer 'tiles.configure_rails_initialization', group: :all do
5
- Mime::Type.register 'application/xml', :tile
4
+ initializer('tiles.configure_rails_initialization', group: :all) do
5
+ Mime::Type.register('application/xml', :tile) unless Mime::Type.lookup_by_extension(:tile)
6
6
 
7
- ActionView::Base.send :include, Tiles::Rails::Helpers
7
+ ActionView::Base.send(:include, Tiles::Rails::Helpers)
8
8
  end
9
9
 
10
10
  end
@@ -1,5 +1,5 @@
1
1
  module Tiles
2
2
  module Rails
3
- VERSION = '0.0.1'
3
+ VERSION = '0.1.0'
4
4
  end
5
5
  end
@@ -1,13 +1,13 @@
1
1
  tile_feed do |feed|
2
- feed.binding(branding: 'logo', template: 'TileSquare150x150Text04', fallback: 'TileSquareImage') do
2
+ feed.binding(template: 'TileSquare150x150Text04', fallback: 'TileSquareImage') do
3
3
  feed.text(@posts.first.title, id: '1')
4
4
  end
5
5
 
6
- feed.binding(branding: 'logo', template: 'TileWide310x150Text03', fallback: 'TileWideImage') do
6
+ feed.binding(template: 'TileWide310x150Text03', fallback: 'TileWideImage') do
7
7
  feed.text(@posts.first.title, id: '1')
8
8
  end
9
9
 
10
- feed.binding(branding: 'logo', template: 'TileSquare310x310TextList02', contentId: @posts.first.id) do
10
+ feed.binding(template: 'TileSquare310x310TextList02', contentId: @posts.first.id) do
11
11
  @posts.each_with_index do |post, index|
12
12
  feed.text(post.title, id: "#{index + 1}")
13
13
  end
@@ -10,8 +10,8 @@ Gem::Specification.new do |s|
10
10
  s.homepage = 'https://github.com/unindented/tiles-rails'
11
11
  s.license = 'MIT'
12
12
 
13
- s.summary = 'Windows 8 tile helpers for Rails'
14
- s.description = 'Adds easy defaults for writing Windows 8 tile functionality on top of Rails'
13
+ s.summary = 'Windows 8.1 tile helpers for Rails'
14
+ s.description = 'Adds easy defaults for writing Windows 8.1 tile functionality on top of Rails'
15
15
 
16
16
  s.files = `git ls-files`.split($/)
17
17
  s.executables = s.files.grep(%r{^bin/}) { |f| File.basename(f) }
metadata CHANGED
@@ -1,7 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tiles-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.1.0
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - Daniel Perez Alvarez
@@ -13,6 +14,7 @@ dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: railties
15
16
  requirement: !ruby/object:Gem::Requirement
17
+ none: false
16
18
  requirements:
17
19
  - - ~>
18
20
  - !ruby/object:Gem::Version
@@ -20,6 +22,7 @@ dependencies:
20
22
  type: :runtime
21
23
  prerelease: false
22
24
  version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
23
26
  requirements:
24
27
  - - ~>
25
28
  - !ruby/object:Gem::Version
@@ -27,6 +30,7 @@ dependencies:
27
30
  - !ruby/object:Gem::Dependency
28
31
  name: rails
29
32
  requirement: !ruby/object:Gem::Requirement
33
+ none: false
30
34
  requirements:
31
35
  - - ~>
32
36
  - !ruby/object:Gem::Version
@@ -34,6 +38,7 @@ dependencies:
34
38
  type: :development
35
39
  prerelease: false
36
40
  version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
37
42
  requirements:
38
43
  - - ~>
39
44
  - !ruby/object:Gem::Version
@@ -41,19 +46,21 @@ dependencies:
41
46
  - !ruby/object:Gem::Dependency
42
47
  name: sqlite3
43
48
  requirement: !ruby/object:Gem::Requirement
49
+ none: false
44
50
  requirements:
45
- - - '>='
51
+ - - ! '>='
46
52
  - !ruby/object:Gem::Version
47
53
  version: '0'
48
54
  type: :development
49
55
  prerelease: false
50
56
  version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
51
58
  requirements:
52
- - - '>='
59
+ - - ! '>='
53
60
  - !ruby/object:Gem::Version
54
61
  version: '0'
55
- description: Adds easy defaults for writing Windows 8 tile functionality on top of
56
- Rails
62
+ description: Adds easy defaults for writing Windows 8.1 tile functionality on top
63
+ of Rails
57
64
  email:
58
65
  - unindented@gmail.com
59
66
  executables: []
@@ -119,27 +126,28 @@ files:
119
126
  homepage: https://github.com/unindented/tiles-rails
120
127
  licenses:
121
128
  - MIT
122
- metadata: {}
123
129
  post_install_message:
124
130
  rdoc_options: []
125
131
  require_paths:
126
132
  - lib
127
133
  required_ruby_version: !ruby/object:Gem::Requirement
134
+ none: false
128
135
  requirements:
129
- - - '>='
136
+ - - ! '>='
130
137
  - !ruby/object:Gem::Version
131
138
  version: '0'
132
139
  required_rubygems_version: !ruby/object:Gem::Requirement
140
+ none: false
133
141
  requirements:
134
- - - '>='
142
+ - - ! '>='
135
143
  - !ruby/object:Gem::Version
136
144
  version: '0'
137
145
  requirements: []
138
146
  rubyforge_project:
139
- rubygems_version: 2.0.5
147
+ rubygems_version: 1.8.25
140
148
  signing_key:
141
- specification_version: 4
142
- summary: Windows 8 tile helpers for Rails
149
+ specification_version: 3
150
+ summary: Windows 8.1 tile helpers for Rails
143
151
  test_files:
144
152
  - test/controllers/feeds_controller_test.rb
145
153
  - test/dummy/README.rdoc
checksums.yaml DELETED
@@ -1,7 +0,0 @@
1
- ---
2
- SHA1:
3
- metadata.gz: 1d013164155d02dd80a305a4758e3467bae8f0ee
4
- data.tar.gz: b99db686bdd4217577bc86c90d0ba44f36783678
5
- SHA512:
6
- metadata.gz: f079f73f96233ca6459d04b2d33e03bb4def70050627009ed0a86960865e4aeff15d3377042cc298d70b4bd4bdeb3a673f87a0dc8f20c9fe81de6f5f24d32a1b
7
- data.tar.gz: bce3d21dbb8ab0b749c51761c78597a38506c70004d9315902713b656ec79093c31a5c5d5b482eee68f83e39d9e3b36f9adc0e96832f5f9cb8d1bae9fdac3609