pre_render 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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: a7c3c0d589af98dc5618bdaef33b91078b21b705
4
+ data.tar.gz: 35f0eabc6e52dca5a2f3cfa988779829d17682aa
5
+ SHA512:
6
+ metadata.gz: 88dac5da89b583b991a0972b1aea05b451a804be03642b1b4bfc8774be3caa1201b49e61c34e7ec8d7e42bbeeb7b05df7a7eb96feb5d6e7546ce173db8525824
7
+ data.tar.gz: 5246c376ab7d7f92e9c32d804692495ff31e043cb1e52c4db20f91cb672f18970560d8e13bb41da0a575b0a1c4069a5345860d3d27b26509da48878fdbe572a5
data/README.md ADDED
@@ -0,0 +1,2 @@
1
+ # pre_render
2
+ Adds support for a pre_render methods to Rails controllers.
data/Rakefile ADDED
@@ -0,0 +1,34 @@
1
+ begin
2
+ require 'bundler/setup'
3
+ rescue LoadError
4
+ puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
5
+ end
6
+
7
+ require 'rdoc/task'
8
+
9
+ RDoc::Task.new(:rdoc) do |rdoc|
10
+ rdoc.rdoc_dir = 'rdoc'
11
+ rdoc.title = 'PreRender'
12
+ rdoc.options << '--line-numbers'
13
+ rdoc.rdoc_files.include('README.rdoc')
14
+ rdoc.rdoc_files.include('lib/**/*.rb')
15
+ end
16
+
17
+
18
+
19
+
20
+
21
+
22
+ Bundler::GemHelper.install_tasks
23
+
24
+ require 'rake/testtask'
25
+
26
+ Rake::TestTask.new(:test) do |t|
27
+ t.libs << 'lib'
28
+ t.libs << 'test'
29
+ t.pattern = 'test/**/*_test.rb'
30
+ t.verbose = false
31
+ end
32
+
33
+
34
+ task default: :test
@@ -0,0 +1,3 @@
1
+ module PreRender
2
+ VERSION = "0.0.1"
3
+ end
data/lib/pre_render.rb ADDED
@@ -0,0 +1,30 @@
1
+ ##
2
+ # The pre-render module.
3
+
4
+ module PreRender
5
+ end
6
+
7
+ if defined?(Rails)
8
+
9
+ ##
10
+ # Augments a Rails application's controller.
11
+
12
+ class ApplicationController < ActionController::Base
13
+
14
+ ##
15
+ # Overrides the default render() method to call a subclass' pre_render() method if it is present. Because
16
+ # the pre_render() method is called before the actual render() method, it is a good place for the controller
17
+ # to compose the "view model" based on the view being rendered before the actual render() method is called.
18
+ # @param args Arguments passed to the original render() method.
19
+
20
+ def render(*args)
21
+ if self.class.method_defined? :pre_render
22
+ view = args[0].is_a?(Hash) ? (args[0][:action] || action_name) : (args[0] || action_name)
23
+ self.pre_render(view.to_sym, *args)
24
+ end
25
+ super # invoke the actual render() method
26
+ end
27
+
28
+ end
29
+
30
+ end
@@ -0,0 +1,4 @@
1
+ # desc "Explaining what the task does"
2
+ # task :pre_render do
3
+ # # Task goes here
4
+ # end
metadata ADDED
@@ -0,0 +1,80 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: pre_render
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Nathan Brazil
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2015-02-13 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rails
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: 4.2.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 4.2.0
27
+ - !ruby/object:Gem::Dependency
28
+ name: sqlite3
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ description: If defined, a Rails controller's pre_prender() method will be invoked
42
+ for each action right before Rail's built-in render() method. This will give the
43
+ controller a chance to fully initialize any variables or view model just prior to
44
+ rendering the view.
45
+ email:
46
+ - nb@bitaxis.com
47
+ executables: []
48
+ extensions: []
49
+ extra_rdoc_files: []
50
+ files:
51
+ - README.md
52
+ - Rakefile
53
+ - lib/pre_render.rb
54
+ - lib/pre_render/version.rb
55
+ - lib/tasks/pre_render_tasks.rake
56
+ homepage: https://github.com/bitaxis/pre_render
57
+ licenses:
58
+ - MIT
59
+ metadata: {}
60
+ post_install_message:
61
+ rdoc_options: []
62
+ require_paths:
63
+ - lib
64
+ required_ruby_version: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ required_rubygems_version: !ruby/object:Gem::Requirement
70
+ requirements:
71
+ - - ">="
72
+ - !ruby/object:Gem::Version
73
+ version: '0'
74
+ requirements: []
75
+ rubyforge_project:
76
+ rubygems_version: 2.4.5
77
+ signing_key:
78
+ specification_version: 4
79
+ summary: Adds support for a pre_render() method to Rails controllers.
80
+ test_files: []