rails-footnotes 3.7.5 → 3.7.6

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/.gitignore CHANGED
@@ -1,6 +1,7 @@
1
1
  .*
2
2
  !.gitignore
3
3
  !.gitmodules
4
+ !.travis.yml
4
5
  !*.example
5
6
  *.gem
6
7
  .bundle
@@ -9,3 +10,4 @@ pkg/*
9
10
  coverage
10
11
  tags
11
12
  doc
13
+ bin
@@ -0,0 +1,9 @@
1
+ script: "bundle exec rake spec"
2
+ rvm:
3
+ - 1.8.7
4
+ - 1.9.2
5
+ - 1.9.3
6
+ - ree
7
+ notifications:
8
+ recipients:
9
+ - romanvbabenko@gmail.com
@@ -31,7 +31,7 @@ In RAILS_ROOT/config/environments/development.rb (yes, you want it only in devel
31
31
 
32
32
  == Configuration
33
33
 
34
- For version greater then 3.7.0
34
+ For version greater than 3.7.0
35
35
 
36
36
  If you want to add alternate logic to enable or disable footnotes,
37
37
  add something like this to config/initializers/footnotes.rb:
@@ -129,7 +129,14 @@ Then put in your environment:
129
129
 
130
130
  Footnotes::Filter.notes += [:current_user]
131
131
 
132
- == Colaborators
132
+ == Display of the notes
133
+
134
+ By default the notes will be showed at the bottom of your page (appended just before </body>).
135
+ If you'd like these notes on a different place (perhaps for aesthetical reasons) you can edit one of your views and add:
136
+ <div id="footnotes_holder"></div>
137
+ at an appropriate place, your notes will now appear inside div#footnotes_holder
138
+
139
+ == Collaborators
133
140
 
134
141
  * Leon Li - http://github.com/scorpio
135
142
  * Keenan Brock - http://github.com/kbrock
@@ -14,7 +14,7 @@ module Footnotes
14
14
  end
15
15
 
16
16
  def valid?
17
- prefix? && File.exists?(self.controller_filename)
17
+ prefix? && controller_filename && File.exists?(controller_filename)
18
18
  end
19
19
 
20
20
  protected
@@ -23,7 +23,7 @@ module Footnotes
23
23
  end
24
24
 
25
25
  def controller_filename
26
- @controller_filename ||= Gem.find_files(self.controller_path).first # tnx https://github.com/MasterLambaster
26
+ @controller_filename ||= Gem.find_files(controller_path).first # tnx https://github.com/MasterLambaster
27
27
  end
28
28
 
29
29
  def controller_text
@@ -14,7 +14,7 @@ module Footnotes
14
14
  if @files.empty?
15
15
  ""
16
16
  else
17
- "<ul><li>#{@files.join("</li><li>")}</li></ul>"
17
+ "<ul><li>%s</li></ul>" % @files.join("</li><li>")
18
18
  end
19
19
  end
20
20
 
@@ -28,12 +28,30 @@ module Footnotes
28
28
  end
29
29
 
30
30
  def parse_files!
31
- @files.collect! do |filename|
32
- if filename =~ %r{^/}
33
- full_filename = File.join(File.expand_path(Rails.root), 'public', filename)
34
- %[<a href="#{Footnotes::Filter.prefix(full_filename, 1, 1)}">#{filename}</a>]
35
- else
36
- %[<a href="#{filename}">#{filename}</a>]
31
+ if Rails.version >= '3.1' && Rails.application.config.assets[:enabled]
32
+ asset_paths = Rails.application.config.assets.paths
33
+ linked_files = []
34
+
35
+ @files.collect do |file|
36
+ base_name = File.basename(file)
37
+ asset_paths.each do |asset_path|
38
+ results = Dir[File.expand_path(base_name, asset_path) + '*']
39
+ results.each do |r|
40
+ linked_files << %[<a href="#{Footnotes::Filter.prefix(r, 1, 1)}">#{File.basename(r)}</a>]
41
+ end
42
+ break if results.present?
43
+ end
44
+ end
45
+ @files = linked_files
46
+ else
47
+ #Original Implementation
48
+ @files.collect! do |filename|
49
+ if filename =~ %r{^/}
50
+ full_filename = File.join(File.expand_path(Rails.root), 'public', filename)
51
+ %[<a href="#{Footnotes::Filter.prefix(full_filename, 1, 1)}">#{filename}</a>]
52
+ else
53
+ %[<a href="#{filename}">#{filename}</a>]
54
+ end
37
55
  end
38
56
  end
39
57
  end
@@ -1,3 +1,3 @@
1
1
  module Footnotes
2
- VERSION = "3.7.5"
2
+ VERSION = "3.7.6"
3
3
  end
@@ -0,0 +1,12 @@
1
+ require "spec_helper"
2
+ require "rails-footnotes/notes/controller_note"
3
+
4
+ describe Footnotes::Notes::ControllerNote do
5
+ # Issue #60
6
+ it "should not be valid if conftroller file not exist" do
7
+ note = Footnotes::Notes::ControllerNote.new(mock)
8
+ note.stub(:controller_filename).and_return(nil)
9
+
10
+ note.should_not be_valid
11
+ end
12
+ end
@@ -3,9 +3,15 @@ require 'action_controller'
3
3
  require "rails-footnotes/notes/files_note"
4
4
 
5
5
  describe Footnotes::Notes::FilesNote do
6
- let(:note) {Footnotes::Notes::FilesNote.new(mock('controller', :response => mock('', :body => '')))}
7
- subject {note}
8
6
 
9
- it {should be_valid}
10
- its(:row) {should eql :edit}
7
+ let(:note) do
8
+ Rails.stub(:version).and_return('3.0.12');
9
+ Footnotes::Notes::FilesNote.new(mock('controller', :response => mock('', :body => '')))
10
+ end
11
+
12
+ subject { note }
13
+
14
+ it { should be_valid }
15
+ its(:row) { should eql :edit }
16
+
11
17
  end
@@ -16,6 +16,8 @@ require "rails-footnotes"
16
16
 
17
17
  class Rails
18
18
  def self.logger; end
19
+
20
+ def self.version; '3.0.12'; end
19
21
  end
20
22
 
21
23
  RSpec.configure do |config|
metadata CHANGED
@@ -1,94 +1,71 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: rails-footnotes
3
- version: !ruby/object:Gem::Version
4
- hash: 17
3
+ version: !ruby/object:Gem::Version
4
+ version: 3.7.6
5
5
  prerelease:
6
- segments:
7
- - 3
8
- - 7
9
- - 5
10
- version: 3.7.5
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Keenan Brock
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2011-09-30 00:00:00 Z
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
12
+ date: 2012-03-26 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
21
15
  name: rails
22
- prerelease: false
23
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: &70324691484480 !ruby/object:Gem::Requirement
24
17
  none: false
25
- requirements:
26
- - - ">="
27
- - !ruby/object:Gem::Version
28
- hash: 7
29
- segments:
30
- - 3
31
- - 0
32
- - 0
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
33
21
  version: 3.0.0
34
22
  type: :runtime
35
- version_requirements: *id001
36
- - !ruby/object:Gem::Dependency
37
- name: rails
38
23
  prerelease: false
39
- requirement: &id002 !ruby/object:Gem::Requirement
24
+ version_requirements: *70324691484480
25
+ - !ruby/object:Gem::Dependency
26
+ name: rails
27
+ requirement: &70324691483740 !ruby/object:Gem::Requirement
40
28
  none: false
41
- requirements:
42
- - - ">="
43
- - !ruby/object:Gem::Version
44
- hash: 7
45
- segments:
46
- - 3
47
- - 0
48
- - 0
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
49
32
  version: 3.0.0
50
33
  type: :development
51
- version_requirements: *id002
52
- - !ruby/object:Gem::Dependency
53
- name: rspec
54
34
  prerelease: false
55
- requirement: &id003 !ruby/object:Gem::Requirement
35
+ version_requirements: *70324691483740
36
+ - !ruby/object:Gem::Dependency
37
+ name: rspec
38
+ requirement: &70324691483080 !ruby/object:Gem::Requirement
56
39
  none: false
57
- requirements:
58
- - - ">="
59
- - !ruby/object:Gem::Version
60
- hash: 3
61
- segments:
62
- - 0
63
- version: "0"
40
+ requirements:
41
+ - - ! '>='
42
+ - !ruby/object:Gem::Version
43
+ version: '0'
64
44
  type: :development
65
- version_requirements: *id003
66
- - !ruby/object:Gem::Dependency
67
- name: watchr
68
45
  prerelease: false
69
- requirement: &id004 !ruby/object:Gem::Requirement
46
+ version_requirements: *70324691483080
47
+ - !ruby/object:Gem::Dependency
48
+ name: watchr
49
+ requirement: &70324691482220 !ruby/object:Gem::Requirement
70
50
  none: false
71
- requirements:
72
- - - ">="
73
- - !ruby/object:Gem::Version
74
- hash: 3
75
- segments:
76
- - 0
77
- version: "0"
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
78
55
  type: :development
79
- version_requirements: *id004
80
- description: Every Rails page has footnotes that gives information about your application and links back to your editor.
81
- email:
56
+ prerelease: false
57
+ version_requirements: *70324691482220
58
+ description: Every Rails page has footnotes that gives information about your application
59
+ and links back to your editor.
60
+ email:
82
61
  - keenan@thebrocks.net
83
62
  executables: []
84
-
85
63
  extensions: []
86
-
87
64
  extra_rdoc_files: []
88
-
89
- files:
65
+ files:
90
66
  - .gitignore
91
67
  - .rspec.example
68
+ - .travis.yml
92
69
  - .watchr.example
93
70
  - CHANGELOG
94
71
  - Gemfile
@@ -126,6 +103,7 @@ files:
126
103
  - spec/abstract_note_spec.rb
127
104
  - spec/footnotes_spec.rb
128
105
  - spec/notes/assigns_note_spec.rb
106
+ - spec/notes/controller_note_spec.rb
129
107
  - spec/notes/files_note_spec.rb
130
108
  - spec/notes/javascripts_note_spec.rb
131
109
  - spec/notes/partials_notes_spec.rb
@@ -133,41 +111,34 @@ files:
133
111
  - spec/spec_helper.rb
134
112
  homepage: http://github.com/josevalim/rails-footnotes
135
113
  licenses: []
136
-
137
114
  post_install_message:
138
115
  rdoc_options: []
139
-
140
- require_paths:
116
+ require_paths:
141
117
  - lib
142
- required_ruby_version: !ruby/object:Gem::Requirement
118
+ required_ruby_version: !ruby/object:Gem::Requirement
143
119
  none: false
144
- requirements:
145
- - - ">="
146
- - !ruby/object:Gem::Version
147
- hash: 3
148
- segments:
149
- - 0
150
- version: "0"
151
- required_rubygems_version: !ruby/object:Gem::Requirement
120
+ requirements:
121
+ - - ! '>='
122
+ - !ruby/object:Gem::Version
123
+ version: '0'
124
+ required_rubygems_version: !ruby/object:Gem::Requirement
152
125
  none: false
153
- requirements:
154
- - - ">="
155
- - !ruby/object:Gem::Version
156
- hash: 3
157
- segments:
158
- - 0
159
- version: "0"
126
+ requirements:
127
+ - - ! '>='
128
+ - !ruby/object:Gem::Version
129
+ version: '0'
160
130
  requirements: []
161
-
162
131
  rubyforge_project: rails-footnotes
163
- rubygems_version: 1.8.10
132
+ rubygems_version: 1.8.17
164
133
  signing_key:
165
134
  specification_version: 3
166
- summary: Every Rails page has footnotes that gives information about your application and links back to your editor.
167
- test_files:
135
+ summary: Every Rails page has footnotes that gives information about your application
136
+ and links back to your editor.
137
+ test_files:
168
138
  - spec/abstract_note_spec.rb
169
139
  - spec/footnotes_spec.rb
170
140
  - spec/notes/assigns_note_spec.rb
141
+ - spec/notes/controller_note_spec.rb
171
142
  - spec/notes/files_note_spec.rb
172
143
  - spec/notes/javascripts_note_spec.rb
173
144
  - spec/notes/partials_notes_spec.rb