jekyll-octopod 0.17.2 → 0.18.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.
Files changed (194) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/Rakefile +3 -8
  4. data/assets/_config.yml.sample +1 -1
  5. data/bin/octopod +93 -0
  6. data/lib/jekyll/octopod_filters.rb +2 -2
  7. data/lib/jekyll/paged_feed_page.rb +2 -1
  8. data/lib/jekyll/podcast_player_page.rb +2 -1
  9. data/lib/jekyll/podlove_player_tag.rb +3 -3
  10. data/lib/jekyll/static_file.rb +0 -1
  11. data/lib/jekyll/theme_layout.rb +19 -0
  12. data/lib/jekyll-octopod.rb +1 -0
  13. data/lib/octopod/version.rb +2 -2
  14. metadata +6 -185
  15. data/assets/_includes/disqus_count.html +0 -13
  16. data/assets/_includes/disqus_thread.html +0 -13
  17. data/assets/_includes/isso_thread.html +0 -6
  18. data/assets/_includes/post.html +0 -24
  19. data/assets/_includes/post_header.html +0 -17
  20. data/assets/_includes/post_line.html +0 -3
  21. data/assets/_includes/sidebar.html +0 -106
  22. data/assets/_layouts/default.html +0 -83
  23. data/assets/_layouts/feed.xml +0 -114
  24. data/assets/_layouts/jsonfeed.json +0 -52
  25. data/assets/_layouts/page.html +0 -15
  26. data/assets/_layouts/player_index.html +0 -36
  27. data/assets/_layouts/post.html +0 -10
  28. data/assets/apple-touch-icon-precomposed.png +0 -0
  29. data/assets/favicon.ico +0 -0
  30. data/assets/img/favicon.ico +0 -0
  31. data/assets/img/logo/android-icon-144x144.png +0 -0
  32. data/assets/img/logo/android-icon-192x192.png +0 -0
  33. data/assets/img/logo/android-icon-36x36.png +0 -0
  34. data/assets/img/logo/android-icon-48x48.png +0 -0
  35. data/assets/img/logo/android-icon-72x72.png +0 -0
  36. data/assets/img/logo/android-icon-96x96.png +0 -0
  37. data/assets/img/logo/apple-icon-114x114.png +0 -0
  38. data/assets/img/logo/apple-icon-120x120.png +0 -0
  39. data/assets/img/logo/apple-icon-144x144.png +0 -0
  40. data/assets/img/logo/apple-icon-152x152.png +0 -0
  41. data/assets/img/logo/apple-icon-180x180.png +0 -0
  42. data/assets/img/logo/apple-icon-57x57.png +0 -0
  43. data/assets/img/logo/apple-icon-60x60.png +0 -0
  44. data/assets/img/logo/apple-icon-72x72.png +0 -0
  45. data/assets/img/logo/apple-icon-76x76.png +0 -0
  46. data/assets/img/logo/apple-icon-precomposed.png +0 -0
  47. data/assets/img/logo/apple-icon.png +0 -0
  48. data/assets/img/logo/browserconfig.xml +0 -2
  49. data/assets/img/logo/favicon-16x16.png +0 -0
  50. data/assets/img/logo/favicon-32x32.png +0 -0
  51. data/assets/img/logo/favicon-96x96.png +0 -0
  52. data/assets/img/logo/favicon.ico +0 -0
  53. data/assets/img/logo/manifest.json +0 -41
  54. data/assets/img/logo/ms-icon-144x144.png +0 -0
  55. data/assets/img/logo/ms-icon-150x150.png +0 -0
  56. data/assets/img/logo/ms-icon-310x310.png +0 -0
  57. data/assets/img/logo/ms-icon-70x70.png +0 -0
  58. data/assets/img/logo-360x360.png +0 -0
  59. data/assets/img/logo-itunes.jpg +0 -0
  60. data/assets/img/logo.jpg +0 -0
  61. data/assets/podlove-player/5.13.0/player/395.js +0 -2
  62. data/assets/podlove-player/5.13.0/player/395.js.LICENSE.txt +0 -1
  63. data/assets/podlove-player/5.13.0/player/424.js +0 -2
  64. data/assets/podlove-player/5.13.0/player/424.js.LICENSE.txt +0 -1
  65. data/assets/podlove-player/5.13.0/player/514.js +0 -2
  66. data/assets/podlove-player/5.13.0/player/514.js.LICENSE.txt +0 -1
  67. data/assets/podlove-player/5.13.0/player/712.js +0 -2
  68. data/assets/podlove-player/5.13.0/player/712.js.LICENSE.txt +0 -1
  69. data/assets/podlove-player/5.13.0/player/872.js +0 -2
  70. data/assets/podlove-player/5.13.0/player/872.js.LICENSE.txt +0 -1
  71. data/assets/podlove-player/5.13.0/player/882.js +0 -2
  72. data/assets/podlove-player/5.13.0/player/882.js.LICENSE.txt +0 -1
  73. data/assets/podlove-player/5.13.0/player/932.js +0 -2
  74. data/assets/podlove-player/5.13.0/player/932.js.LICENSE.txt +0 -1
  75. data/assets/podlove-player/5.13.0/player/bootstrap.js +0 -2
  76. data/assets/podlove-player/5.13.0/player/bootstrap.js.LICENSE.txt +0 -1
  77. data/assets/podlove-player/5.13.0/player/styles.css +0 -2
  78. data/assets/podlove-player/5.13.0/player/styles.js +0 -2
  79. data/assets/podlove-player/5.13.0/player/styles.js.LICENSE.txt +0 -1
  80. data/assets/podlove-player/5.13.0/player/vendor.js +0 -2
  81. data/assets/podlove-player/5.13.0/player/vendor.js.LICENSE.txt +0 -49
  82. data/assets/podlove-player/embed.js +0 -2
  83. data/assets/podlove-player/embed.js.LICENSE.txt +0 -3
  84. data/assets/podlove-player/variant-l.js +0 -2
  85. data/assets/podlove-player/variant-l.js.LICENSE.txt +0 -1
  86. data/assets/podlove-player/variant-m.js +0 -2
  87. data/assets/podlove-player/variant-m.js.LICENSE.txt +0 -1
  88. data/assets/podlove-player/variant-xl.js +0 -2
  89. data/assets/podlove-player/variant-xl.js.LICENSE.txt +0 -1
  90. data/assets/subscribe-button/button.html +0 -15
  91. data/assets/subscribe-button/fonts/podlove/Podlove.eot +0 -0
  92. data/assets/subscribe-button/fonts/podlove/Podlove.svg +0 -16
  93. data/assets/subscribe-button/fonts/podlove/Podlove.ttf +0 -0
  94. data/assets/subscribe-button/fonts/podlove/Podlove.woff +0 -0
  95. data/assets/subscribe-button/fonts/roboto_light/Roboto-Light-webfont.eot +0 -0
  96. data/assets/subscribe-button/fonts/roboto_light/Roboto-Light-webfont.svg +0 -312
  97. data/assets/subscribe-button/fonts/roboto_light/Roboto-Light-webfont.ttf +0 -0
  98. data/assets/subscribe-button/fonts/roboto_light/Roboto-Light-webfont.woff +0 -0
  99. data/assets/subscribe-button/fonts/roboto_medium/Roboto-Medium-webfont.eot +0 -0
  100. data/assets/subscribe-button/fonts/roboto_medium/Roboto-Medium-webfont.svg +0 -305
  101. data/assets/subscribe-button/fonts/roboto_medium/Roboto-Medium-webfont.ttf +0 -0
  102. data/assets/subscribe-button/fonts/roboto_medium/Roboto-Medium-webfont.woff +0 -0
  103. data/assets/subscribe-button/images/android/acast.png +0 -0
  104. data/assets/subscribe-button/images/android/antennapod.png +0 -0
  105. data/assets/subscribe-button/images/android/beyondpod.png +0 -0
  106. data/assets/subscribe-button/images/android/chakouat.png +0 -0
  107. data/assets/subscribe-button/images/android/doggcatcher.png +0 -0
  108. data/assets/subscribe-button/images/android/playerfm.png +0 -0
  109. data/assets/subscribe-button/images/android/pocketcasts.png +0 -0
  110. data/assets/subscribe-button/images/android/podcastaddict.png +0 -0
  111. data/assets/subscribe-button/images/android/podcastrepublic.png +0 -0
  112. data/assets/subscribe-button/images/android/podcatcher-deluxe.png +0 -0
  113. data/assets/subscribe-button/images/android/podkicker.png +0 -0
  114. data/assets/subscribe-button/images/android/shortorange.png +0 -0
  115. data/assets/subscribe-button/images/android/upod.png +0 -0
  116. data/assets/subscribe-button/images/blackberry/bpod.png +0 -0
  117. data/assets/subscribe-button/images/blackberry/gpodder.png +0 -0
  118. data/assets/subscribe-button/images/cloud/gpoddernet.png +0 -0
  119. data/assets/subscribe-button/images/cloud/instacastcloud.png +0 -0
  120. data/assets/subscribe-button/images/cloud/playerfm.png +0 -0
  121. data/assets/subscribe-button/images/cloud/pocketcasts.png +0 -0
  122. data/assets/subscribe-button/images/cloud/shortorange.png +0 -0
  123. data/assets/subscribe-button/images/generic/android.png +0 -0
  124. data/assets/subscribe-button/images/generic/rss.png +0 -0
  125. data/assets/subscribe-button/images/generic/windows.png +0 -0
  126. data/assets/subscribe-button/images/generic/windows8.png +0 -0
  127. data/assets/subscribe-button/images/generic/windowsphone.png +0 -0
  128. data/assets/subscribe-button/images/icon-big.png +0 -0
  129. data/assets/subscribe-button/images/icon-big@2x.png +0 -0
  130. data/assets/subscribe-button/images/icon-medium.png +0 -0
  131. data/assets/subscribe-button/images/icon-medium@2x.png +0 -0
  132. data/assets/subscribe-button/images/icon-small.png +0 -0
  133. data/assets/subscribe-button/images/icon-small@2x.png +0 -0
  134. data/assets/subscribe-button/images/icon.svg +0 -32
  135. data/assets/subscribe-button/images/ios/castro.png +0 -0
  136. data/assets/subscribe-button/images/ios/downcast.png +0 -0
  137. data/assets/subscribe-button/images/ios/icatcher.png +0 -0
  138. data/assets/subscribe-button/images/ios/instacast.png +0 -0
  139. data/assets/subscribe-button/images/ios/overcast.png +0 -0
  140. data/assets/subscribe-button/images/ios/pocketcasts.png +0 -0
  141. data/assets/subscribe-button/images/ios/podcasts.png +0 -0
  142. data/assets/subscribe-button/images/ios/podcat.png +0 -0
  143. data/assets/subscribe-button/images/ios/podgrasp.png +0 -0
  144. data/assets/subscribe-button/images/ios/podwrangler.png +0 -0
  145. data/assets/subscribe-button/images/ios/rssradio.png +0 -0
  146. data/assets/subscribe-button/images/ios/shortorange.png +0 -0
  147. data/assets/subscribe-button/images/ios/sleekcast.png +0 -0
  148. data/assets/subscribe-button/images/linux/clementine.png +0 -0
  149. data/assets/subscribe-button/images/linux/gpodder.png +0 -0
  150. data/assets/subscribe-button/images/linux/miro.png +0 -0
  151. data/assets/subscribe-button/images/osx/downcast.png +0 -0
  152. data/assets/subscribe-button/images/osx/gpodder.png +0 -0
  153. data/assets/subscribe-button/images/osx/instacast.png +0 -0
  154. data/assets/subscribe-button/images/osx/itunes.png +0 -0
  155. data/assets/subscribe-button/images/osx/miro.png +0 -0
  156. data/assets/subscribe-button/images/osx/podgrasp.png +0 -0
  157. data/assets/subscribe-button/images/osx/podsnatcher.png +0 -0
  158. data/assets/subscribe-button/images/podlove.svg +0 -45
  159. data/assets/subscribe-button/images/stores/android.png +0 -0
  160. data/assets/subscribe-button/images/stores/apple-app-store-en.png +0 -0
  161. data/assets/subscribe-button/images/stores/apple-app-store-en.svg +0 -129
  162. data/assets/subscribe-button/images/stores/blackberry-world-en.png +0 -0
  163. data/assets/subscribe-button/images/stores/google-play-en.png +0 -0
  164. data/assets/subscribe-button/images/stores/google-play-en.svg +0 -126
  165. data/assets/subscribe-button/images/stores/google-play-en@1x.svg +0 -126
  166. data/assets/subscribe-button/images/stores/ios.png +0 -0
  167. data/assets/subscribe-button/images/stores/osx.png +0 -0
  168. data/assets/subscribe-button/images/stores/windows-phone-store-en.png +0 -0
  169. data/assets/subscribe-button/images/stores/windows-phone-store-en.svg +0 -40
  170. data/assets/subscribe-button/images/stores/windows-store-en.png +0 -0
  171. data/assets/subscribe-button/images/stores/windows-store-en.svg +0 -61
  172. data/assets/subscribe-button/images/stores/windows8.png +0 -0
  173. data/assets/subscribe-button/images/stores/windows81.png +0 -0
  174. data/assets/subscribe-button/images/stores/windowsphone.png +0 -0
  175. data/assets/subscribe-button/images/windows/gpodder.png +0 -0
  176. data/assets/subscribe-button/images/windows/itunes.png +0 -0
  177. data/assets/subscribe-button/images/windows/miro.png +0 -0
  178. data/assets/subscribe-button/images/windows/podscout.png +0 -0
  179. data/assets/subscribe-button/images/windowsphone/bringcast.png +0 -0
  180. data/assets/subscribe-button/images/windowsphone/gramocast.png +0 -0
  181. data/assets/subscribe-button/images/windowsphone/ipodcast.png +0 -0
  182. data/assets/subscribe-button/images/windowsphone/pcast.png +0 -0
  183. data/assets/subscribe-button/images/windowsphone/podcastbrain.png +0 -0
  184. data/assets/subscribe-button/images/windowsphone/podcastlounge.png +0 -0
  185. data/assets/subscribe-button/images/windowsphone/podcastpicker.png +0 -0
  186. data/assets/subscribe-button/images/windowsphone/podcasts.png +0 -0
  187. data/assets/subscribe-button/images/windowsphone/podcastspro.png +0 -0
  188. data/assets/subscribe-button/images/windowsphone/wpodder.png +0 -0
  189. data/assets/subscribe-button/javascripts/app.js +0 -6
  190. data/assets/subscribe-button/javascripts/app.js.gz +0 -0
  191. data/assets/subscribe-button/stylesheets/app.css +0 -552
  192. data/assets/subscribe-button/stylesheets/app.css.gz +0 -0
  193. data/assets/subscribe-button/stylesheets/app.css.map +0 -1
  194. data/assets/subscribe-button/stylesheets/app.css.map.gz +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9e84929423b130ee23b322dc8ce553a13d3eb2ceb7e45a857103f25e58412d37
4
- data.tar.gz: 0475ba04a25d6eeca5e7acbc9867ca33f8faf55366ba220996031438eabceb9c
3
+ metadata.gz: a0839dca6dc44f02ded97d9b64cca28cafc7aa28bb5d8df2424a41a9087ec776
4
+ data.tar.gz: fdbc01a5731d6ea1c68be0a92b029c8f2b7c3aacaa7860b65a46fbc08d956198
5
5
  SHA512:
6
- metadata.gz: e2649960dd466f7d951d0633cf24ca34637c1d34de9ff6dfc6b530211f492b612cd3377bb54c87dd473f5d9e12ed7c2e35f4c5f371d9abfc9de1d1425848aec6
7
- data.tar.gz: 1da3998eba6755e4363267240609a706f8bc8f26e54b39e04b05eb04475a18ddbf7283ac2d6b679b3a900498e89ed0eb0a77904044bd40e0952bb48fb0e456b2
6
+ metadata.gz: 910c898c7c3d6caf356982c14f20f5d6b46ada020239afe0a7d719422a9357d60f420089d7d3bca120a8621de49c19a3a102efb0eb7f97dc722b5af9dac5d215
7
+ data.tar.gz: df5871b98d4122c22e47ae9afb72e6c559219d8c2429760143645d5e9576a5fab92c7a5e27c50e094aebb373df6c3a807f39ecb2b93ee2f40a8a78bb94bbeb6d
data/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  [![Gem Version](https://badge.fury.io/rb/jekyll-octopod.svg)](https://badge.fury.io/rb/jekyll-octopod)
4
4
 
5
- <img align="right" src="assets/img/logo.jpg" alt="logo"/>
5
+ <img align="right" src="https://jekyll-octopod.github.io/assets/img/logo.jpg" alt="logo"/>
6
6
 
7
7
  A podcast publishing extension for the static site generator [Jekyll](https://jekyllrb.com/).
8
8
 
data/Rakefile CHANGED
@@ -1,11 +1,6 @@
1
- require 'rake/testtask'
2
1
  require "bundler/gem_tasks"
2
+ require "rspec/core/rake_task"
3
3
 
4
- task :default => [:test]
4
+ RSpec::Core::RakeTask.new(:spec)
5
5
 
6
- Rake::TestTask.new(:test) do |t|
7
- t.libs << '.'
8
- t.pattern = 'test/all.rb'
9
- t.verbose = true
10
- end
11
- Rake::Task['test'].comment = "Run all tests"
6
+ task :default => :spec
@@ -56,7 +56,7 @@ disqus_developer: 0 # 1 | 0
56
56
  ### Isso comments
57
57
  use_isso: "no" # "no" | "yes"
58
58
 
59
- theme: jekyll-bulma
59
+ theme: jekyll-octopod-bulma
60
60
 
61
61
  ### Jekyll Admin: uncomment the last line of this paragraph to enable Jekyll Admin.
62
62
  ### (but you will loose auto regeneration after code changes with a text editor then)
data/bin/octopod CHANGED
@@ -102,6 +102,72 @@ def copy_file_or_create_dir(file)
102
102
  end
103
103
  end
104
104
 
105
+ # Removes a leftover site-local copy of something that's now served by the jekyll-octopod-bulma
106
+ # theme gem instead (see 'now_theme_served' in the 'update' command). '.md' files are always kept,
107
+ # no matter where they're found, since they're real content rather than theme boilerplate.
108
+ def remove_theme_served_path(path)
109
+ return unless File.exist?(path)
110
+
111
+ if File.directory?(path)
112
+ Dir.glob(File.join(path, '**', '*'), File::FNM_DOTMATCH).sort.reverse_each do |entry|
113
+ next if File.basename(entry) == '.' || File.basename(entry) == '..'
114
+ if File.directory?(entry)
115
+ FileUtils.rmdir(entry, verbose: true) if Dir.empty?(entry)
116
+ elsif !entry.end_with?('.md')
117
+ FileUtils.rm(entry, verbose: true)
118
+ end
119
+ end
120
+ FileUtils.rmdir(path, verbose: true) if Dir.exist?(path) && Dir.empty?(path)
121
+ elsif !path.end_with?('.md')
122
+ FileUtils.rm(path, verbose: true)
123
+ end
124
+ end
125
+
126
+ # Points a site's Gemfile and _config.yml at jekyll-octopod-bulma instead of the old direct
127
+ # jekyll-bulma dependency/theme setting. Mirrors the version constraint this gem itself declares on
128
+ # jekyll-octopod-bulma (see jekyll-octopod.gemspec) rather than hardcoding one here, so it can't
129
+ # drift out of sync as that constraint changes across releases.
130
+ def update_gemfile_and_theme_config
131
+ bulma_constraint = GEM_SPEC.dependencies.find { |d| d.name == 'jekyll-octopod-bulma' }&.requirement&.to_s
132
+ new_gem_line = "gem 'jekyll-octopod-bulma'#{bulma_constraint ? ", '#{bulma_constraint}'" : ''}"
133
+
134
+ gemfile_path = PWD + '/Gemfile'
135
+ if File.exist?(gemfile_path)
136
+ gemfile = File.read(gemfile_path)
137
+ jekyll_bulma_line = /^(\s*)gem\s+(['"])jekyll-bulma\2.*$/
138
+
139
+ if gemfile.match?(jekyll_bulma_line)
140
+ gemfile = gemfile.sub(jekyll_bulma_line) { "#{$1}#{new_gem_line}" }
141
+ File.write(gemfile_path, gemfile)
142
+ puts "Replaced the 'jekyll-bulma' line in Gemfile with: #{new_gem_line}"
143
+ elsif !gemfile.match?(/gem\s+(['"])jekyll-octopod-bulma\1/)
144
+ jekyll_octopod_line = /^(\s*)gem\s+(['"])jekyll-octopod\2.*$/
145
+ if gemfile.match?(jekyll_octopod_line)
146
+ gemfile = gemfile.sub(jekyll_octopod_line) { |line| "#{line}\n#{$1}#{new_gem_line}" }
147
+ File.write(gemfile_path, gemfile)
148
+ puts "Added to Gemfile, next to 'jekyll-octopod': #{new_gem_line}"
149
+ else
150
+ puts "Couldn't find a 'jekyll-octopod' line in Gemfile to add 'jekyll-octopod-bulma' next"
151
+ puts "to - add it yourself: #{new_gem_line}"
152
+ end
153
+ else
154
+ puts "Gemfile already references 'jekyll-octopod-bulma'."
155
+ end
156
+ else
157
+ puts "No Gemfile found - skipping."
158
+ end
159
+
160
+ config_path = PWD + '/_config.yml'
161
+ if File.exist?(config_path)
162
+ config = File.read(config_path)
163
+ theme_line = /^theme:\s*jekyll-bulma\s*$/
164
+ if config.match?(theme_line)
165
+ File.write(config_path, config.sub(theme_line, 'theme: jekyll-octopod-bulma'))
166
+ puts "Updated 'theme: jekyll-bulma' to 'theme: jekyll-octopod-bulma' in _config.yml."
167
+ end
168
+ end
169
+ end
170
+
105
171
  def ask(message, valid_options = nil)
106
172
  if valid_options
107
173
  answer = get_stdin("#{message} #{valid_options.to_s.gsub(/"/, '').gsub(/, /,'/')} ") while !valid_options.include?(answer)
@@ -298,6 +364,33 @@ if ARGV.size > 0 && (ARGV[0] == 'episode' || ARGV[0] == 'deploy' || ARGV[0] == '
298
364
  Dir.glob(GEM_DIR + "/assets/**/.*").each(&update_file)
299
365
  puts "===== ... done ===== ", ""
300
366
 
367
+ # As of jekyll-octopod 0.18.0, these paths are served straight from the jekyll-octopod-bulma
368
+ # theme gem instead of being copied here - they're simply no longer under GEM_DIR + "/assets"
369
+ # for the loop above to touch. A leftover copy here would otherwise silently shadow the theme
370
+ # forever (Jekyll always prefers a site's own file over the theme's), with no build error to
371
+ # point at it - so 'update' removes them outright, same "trust git diff, don't special-case"
372
+ # philosophy as the rest of this command. Any '.md' file is kept no matter where it's found,
373
+ # since that's real content, never theme boilerplate.
374
+ now_theme_served = %w[
375
+ _layouts podlove-player subscribe-button img favicon.ico apple-touch-icon-precomposed.png
376
+ _includes/sidebar.html _includes/post_header.html _includes/post.html _includes/post_line.html
377
+ _includes/disqus_thread.html _includes/disqus_count.html _includes/isso_thread.html
378
+ ]
379
+ found_theme_served = now_theme_served.select { |path| File.exist?(File.join(PWD, path)) }
380
+
381
+ unless found_theme_served.empty?
382
+ puts "", "===== Removing files now served by the jekyll-octopod-bulma theme gem ====="
383
+ puts "These used to be copied into your site but are served straight from the"
384
+ puts "jekyll-octopod-bulma theme gem as of jekyll-octopod 0.18.0 - removing the local copies"
385
+ puts "so the theme's current version takes effect ('.md' files, if any, are kept):"
386
+ found_theme_served.each { |path| remove_theme_served_path(File.join(PWD, path)) }
387
+ puts "===== ... done ===== ", ""
388
+ end
389
+
390
+ puts "", "===== Pointing Gemfile/_config.yml at jekyll-octopod-bulma ... ====="
391
+ update_gemfile_and_theme_config
392
+ puts "===== ... done ===== ", ""
393
+
301
394
  puts "", "===== Rewriting the old '{% podigee_player %}' tag to '{% podlove_player %}' ... ====="
302
395
  podigee_player_tag = /\{%-?\s*podigee_player\b.*?-?%\}/
303
396
  updated_posts = Dir.glob(File.join(options['posts_dir'], '**', '*')).select do |post_file|
@@ -132,9 +132,9 @@ module Jekyll
132
132
  # {{ page | image_with_fallback }} => '/path/to/image.png'
133
133
  def image_with_fallback(page)
134
134
  if page["image"]
135
- "/img/" + page["image"]
135
+ "/assets/img/" + page["image"]
136
136
  else
137
- "/img/logo-itunes.jpg"
137
+ "/assets/img/logo-itunes.jpg"
138
138
  end
139
139
  end
140
140
 
@@ -6,7 +6,8 @@ module Jekyll
6
6
  @name = name
7
7
 
8
8
  self.process(@name)
9
- self.read_yaml(File.join(base, '_layouts'), 'feed.xml')
9
+ @path = ThemeLayout.path_for(site, base, 'feed.xml')
10
+ self.read_yaml(base, 'feed.xml')
10
11
  self.data['next'] = pages_total > page_number ? (page_number + 1).to_s : nil
11
12
  self.data['last'] = pages_total > 1 ? pages_total.to_s : nil
12
13
  self.data['prev'] = case page_number
@@ -7,7 +7,8 @@ module Jekyll
7
7
  @name = 'index.html'
8
8
 
9
9
  self.process(@name)
10
- self.read_yaml(File.join(base, '_layouts'), 'player_index.html')
10
+ @path = ThemeLayout.path_for(site, base, 'player_index.html')
11
+ self.read_yaml(base, 'player_index.html')
11
12
 
12
13
  self.data['title'] = post.data['title']
13
14
  self.data['subtitle'] = post.data['subtitle']
@@ -34,7 +34,7 @@ module Jekyll
34
34
  title: title,
35
35
  subtitle: page["subtitle"],
36
36
  summary: page["summary"],
37
- poster: config['url'] + "/img/" + (page["image"] || "logo-360x360.png"),
37
+ poster: config['url'] + "/assets/img/" + (page["image"] || "logo-360x360.png"),
38
38
  link: config['url'] + page["url"],
39
39
  publicationDate: page["date"].respond_to?(:xmlschema) ? page["date"].xmlschema : page["date"].to_s,
40
40
  duration: page["duration"],
@@ -45,7 +45,7 @@ module Jekyll
45
45
 
46
46
  def playerbaseconfig(context)
47
47
  config = context.registers[:site].config
48
- { version: 5, base: "#{config["url"]}/podlove-player/" }.to_json
48
+ { version: 5, base: "#{config["url"]}/assets/podlove-player/" }.to_json
49
49
  end
50
50
 
51
51
  def render(context)
@@ -55,7 +55,7 @@ module Jekyll
55
55
  id = "podlove-player-#{page['id'] ? sha1(page['id'], 8) : 'embed'}"
56
56
  return <<~HTML
57
57
  <div id="#{id}"></div>
58
- <script src="#{config["url"]}/podlove-player/embed.js"></script>
58
+ <script src="#{config["url"]}/assets/podlove-player/embed.js"></script>
59
59
  <script>
60
60
  window.podlovePlayer('##{id}', #{playerconfig(context)}, #{playerbaseconfig(context)});
61
61
  </script>
@@ -3,7 +3,6 @@ module Jekyll
3
3
 
4
4
  def octopod_exclude
5
5
  src = path.sub("#{@base}/", '')
6
- nested_files = %w[]
7
6
 
8
7
  excludes = %w[Gemfile Gemfile.lock README.md octopod]
9
8
  return true if excludes.include?(src)
@@ -0,0 +1,19 @@
1
+ module Jekyll
2
+ # Resolves the layout file that PagedFeedPage and PodcastPlayerPage read directly (instead of
3
+ # going through a page's normal 'layout:' front matter, which Jekyll::LayoutReader already
4
+ # resolves site-then-theme on its own). Mirrors Jekyll::Layout#initialize's own precedence
5
+ # (see jekyll/layout.rb in the jekyll gem): prefer the site's own '_layouts/', fall back to the
6
+ # active theme's. Needed since jekyll-octopod-bulma (0.18.0+) ships 'feed.xml'/'player_index.html'
7
+ # as theme content instead of every site getting its own copy via 'octopod setup'/'update'.
8
+ module ThemeLayout
9
+ def self.path_for(site, base, filename)
10
+ if File.exist?(File.join(base, '_layouts', filename))
11
+ site.in_source_dir(base, '_layouts', filename)
12
+ elsif site.theme&.layouts_path
13
+ site.in_theme_dir(site.theme.layouts_path, filename)
14
+ else
15
+ site.in_source_dir(base, '_layouts', filename)
16
+ end
17
+ end
18
+ end
19
+ end
@@ -1,5 +1,6 @@
1
1
  require "jekyll/octopod_filters"
2
2
  require "jekyll/line_awesome"
3
+ require "jekyll/theme_layout"
3
4
  require "jekyll/paged_feed_page"
4
5
  require "jekyll/paged_feed_page_generator"
5
6
  require "jekyll/podcast_player_page"
@@ -2,8 +2,8 @@ module Jekyll
2
2
  class Octopod
3
3
  module VERSION #:nodoc:
4
4
  MAJOR = 0
5
- MINOR = 17
6
- TINY = 2
5
+ MINOR = 18
6
+ TINY = 0
7
7
 
8
8
  STRING = [MAJOR, MINOR, TINY].join('.')
9
9
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jekyll-octopod
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.17.2
4
+ version: 0.18.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Arne Eilermann
@@ -39,19 +39,19 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: '4.4'
41
41
  - !ruby/object:Gem::Dependency
42
- name: jekyll-bulma
42
+ name: jekyll-octopod-bulma
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 1.0.3
47
+ version: '0.1'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 1.0.3
54
+ version: '0.1'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rspec
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -106,200 +106,20 @@ files:
106
106
  - README.md
107
107
  - Rakefile
108
108
  - assets/_config.yml.sample
109
- - assets/_includes/disqus_count.html
110
- - assets/_includes/disqus_thread.html
111
- - assets/_includes/isso_thread.html
112
- - assets/_includes/post.html
113
- - assets/_includes/post_header.html
114
- - assets/_includes/post_line.html
115
- - assets/_includes/sidebar.html
116
- - assets/_layouts/default.html
117
- - assets/_layouts/feed.xml
118
- - assets/_layouts/jsonfeed.json
119
- - assets/_layouts/page.html
120
- - assets/_layouts/player_index.html
121
- - assets/_layouts/post.html
122
109
  - assets/_posts/2016-03-22-episode0.md
123
110
  - assets/_sass/_overrides.scss
124
- - assets/apple-touch-icon-precomposed.png
125
111
  - assets/episodes.m4a.rss
126
112
  - assets/episodes.mp3.rss
127
113
  - assets/episodes.ogg.rss
128
114
  - assets/episodes/episode0.m4a
129
115
  - assets/episodes/episode0.mp3
130
116
  - assets/episodes/episode0.ogg
131
- - assets/favicon.ico
132
117
  - assets/feed.m4a.json
133
118
  - assets/feed.mp3.json
134
119
  - assets/feed.ogg.json
135
120
  - assets/general_feed.xml
136
- - assets/img/favicon.ico
137
- - assets/img/logo-360x360.png
138
- - assets/img/logo-itunes.jpg
139
- - assets/img/logo.jpg
140
- - assets/img/logo/android-icon-144x144.png
141
- - assets/img/logo/android-icon-192x192.png
142
- - assets/img/logo/android-icon-36x36.png
143
- - assets/img/logo/android-icon-48x48.png
144
- - assets/img/logo/android-icon-72x72.png
145
- - assets/img/logo/android-icon-96x96.png
146
- - assets/img/logo/apple-icon-114x114.png
147
- - assets/img/logo/apple-icon-120x120.png
148
- - assets/img/logo/apple-icon-144x144.png
149
- - assets/img/logo/apple-icon-152x152.png
150
- - assets/img/logo/apple-icon-180x180.png
151
- - assets/img/logo/apple-icon-57x57.png
152
- - assets/img/logo/apple-icon-60x60.png
153
- - assets/img/logo/apple-icon-72x72.png
154
- - assets/img/logo/apple-icon-76x76.png
155
- - assets/img/logo/apple-icon-precomposed.png
156
- - assets/img/logo/apple-icon.png
157
- - assets/img/logo/browserconfig.xml
158
- - assets/img/logo/favicon-16x16.png
159
- - assets/img/logo/favicon-32x32.png
160
- - assets/img/logo/favicon-96x96.png
161
- - assets/img/logo/favicon.ico
162
- - assets/img/logo/manifest.json
163
- - assets/img/logo/ms-icon-144x144.png
164
- - assets/img/logo/ms-icon-150x150.png
165
- - assets/img/logo/ms-icon-310x310.png
166
- - assets/img/logo/ms-icon-70x70.png
167
121
  - assets/imprint.md
168
122
  - assets/index.md
169
- - assets/podlove-player/5.13.0/player/395.js
170
- - assets/podlove-player/5.13.0/player/395.js.LICENSE.txt
171
- - assets/podlove-player/5.13.0/player/424.js
172
- - assets/podlove-player/5.13.0/player/424.js.LICENSE.txt
173
- - assets/podlove-player/5.13.0/player/514.js
174
- - assets/podlove-player/5.13.0/player/514.js.LICENSE.txt
175
- - assets/podlove-player/5.13.0/player/712.js
176
- - assets/podlove-player/5.13.0/player/712.js.LICENSE.txt
177
- - assets/podlove-player/5.13.0/player/872.js
178
- - assets/podlove-player/5.13.0/player/872.js.LICENSE.txt
179
- - assets/podlove-player/5.13.0/player/882.js
180
- - assets/podlove-player/5.13.0/player/882.js.LICENSE.txt
181
- - assets/podlove-player/5.13.0/player/932.js
182
- - assets/podlove-player/5.13.0/player/932.js.LICENSE.txt
183
- - assets/podlove-player/5.13.0/player/bootstrap.js
184
- - assets/podlove-player/5.13.0/player/bootstrap.js.LICENSE.txt
185
- - assets/podlove-player/5.13.0/player/styles.css
186
- - assets/podlove-player/5.13.0/player/styles.js
187
- - assets/podlove-player/5.13.0/player/styles.js.LICENSE.txt
188
- - assets/podlove-player/5.13.0/player/vendor.js
189
- - assets/podlove-player/5.13.0/player/vendor.js.LICENSE.txt
190
- - assets/podlove-player/embed.js
191
- - assets/podlove-player/embed.js.LICENSE.txt
192
- - assets/podlove-player/variant-l.js
193
- - assets/podlove-player/variant-l.js.LICENSE.txt
194
- - assets/podlove-player/variant-m.js
195
- - assets/podlove-player/variant-m.js.LICENSE.txt
196
- - assets/podlove-player/variant-xl.js
197
- - assets/podlove-player/variant-xl.js.LICENSE.txt
198
- - assets/subscribe-button/button.html
199
- - assets/subscribe-button/fonts/podlove/Podlove.eot
200
- - assets/subscribe-button/fonts/podlove/Podlove.svg
201
- - assets/subscribe-button/fonts/podlove/Podlove.ttf
202
- - assets/subscribe-button/fonts/podlove/Podlove.woff
203
- - assets/subscribe-button/fonts/roboto_light/Roboto-Light-webfont.eot
204
- - assets/subscribe-button/fonts/roboto_light/Roboto-Light-webfont.svg
205
- - assets/subscribe-button/fonts/roboto_light/Roboto-Light-webfont.ttf
206
- - assets/subscribe-button/fonts/roboto_light/Roboto-Light-webfont.woff
207
- - assets/subscribe-button/fonts/roboto_medium/Roboto-Medium-webfont.eot
208
- - assets/subscribe-button/fonts/roboto_medium/Roboto-Medium-webfont.svg
209
- - assets/subscribe-button/fonts/roboto_medium/Roboto-Medium-webfont.ttf
210
- - assets/subscribe-button/fonts/roboto_medium/Roboto-Medium-webfont.woff
211
- - assets/subscribe-button/images/android/acast.png
212
- - assets/subscribe-button/images/android/antennapod.png
213
- - assets/subscribe-button/images/android/beyondpod.png
214
- - assets/subscribe-button/images/android/chakouat.png
215
- - assets/subscribe-button/images/android/doggcatcher.png
216
- - assets/subscribe-button/images/android/playerfm.png
217
- - assets/subscribe-button/images/android/pocketcasts.png
218
- - assets/subscribe-button/images/android/podcastaddict.png
219
- - assets/subscribe-button/images/android/podcastrepublic.png
220
- - assets/subscribe-button/images/android/podcatcher-deluxe.png
221
- - assets/subscribe-button/images/android/podkicker.png
222
- - assets/subscribe-button/images/android/shortorange.png
223
- - assets/subscribe-button/images/android/upod.png
224
- - assets/subscribe-button/images/blackberry/bpod.png
225
- - assets/subscribe-button/images/blackberry/gpodder.png
226
- - assets/subscribe-button/images/cloud/gpoddernet.png
227
- - assets/subscribe-button/images/cloud/instacastcloud.png
228
- - assets/subscribe-button/images/cloud/playerfm.png
229
- - assets/subscribe-button/images/cloud/pocketcasts.png
230
- - assets/subscribe-button/images/cloud/shortorange.png
231
- - assets/subscribe-button/images/generic/android.png
232
- - assets/subscribe-button/images/generic/rss.png
233
- - assets/subscribe-button/images/generic/windows.png
234
- - assets/subscribe-button/images/generic/windows8.png
235
- - assets/subscribe-button/images/generic/windowsphone.png
236
- - assets/subscribe-button/images/icon-big.png
237
- - assets/subscribe-button/images/icon-big@2x.png
238
- - assets/subscribe-button/images/icon-medium.png
239
- - assets/subscribe-button/images/icon-medium@2x.png
240
- - assets/subscribe-button/images/icon-small.png
241
- - assets/subscribe-button/images/icon-small@2x.png
242
- - assets/subscribe-button/images/icon.svg
243
- - assets/subscribe-button/images/ios/castro.png
244
- - assets/subscribe-button/images/ios/downcast.png
245
- - assets/subscribe-button/images/ios/icatcher.png
246
- - assets/subscribe-button/images/ios/instacast.png
247
- - assets/subscribe-button/images/ios/overcast.png
248
- - assets/subscribe-button/images/ios/pocketcasts.png
249
- - assets/subscribe-button/images/ios/podcasts.png
250
- - assets/subscribe-button/images/ios/podcat.png
251
- - assets/subscribe-button/images/ios/podgrasp.png
252
- - assets/subscribe-button/images/ios/podwrangler.png
253
- - assets/subscribe-button/images/ios/rssradio.png
254
- - assets/subscribe-button/images/ios/shortorange.png
255
- - assets/subscribe-button/images/ios/sleekcast.png
256
- - assets/subscribe-button/images/linux/clementine.png
257
- - assets/subscribe-button/images/linux/gpodder.png
258
- - assets/subscribe-button/images/linux/miro.png
259
- - assets/subscribe-button/images/osx/downcast.png
260
- - assets/subscribe-button/images/osx/gpodder.png
261
- - assets/subscribe-button/images/osx/instacast.png
262
- - assets/subscribe-button/images/osx/itunes.png
263
- - assets/subscribe-button/images/osx/miro.png
264
- - assets/subscribe-button/images/osx/podgrasp.png
265
- - assets/subscribe-button/images/osx/podsnatcher.png
266
- - assets/subscribe-button/images/podlove.svg
267
- - assets/subscribe-button/images/stores/android.png
268
- - assets/subscribe-button/images/stores/apple-app-store-en.png
269
- - assets/subscribe-button/images/stores/apple-app-store-en.svg
270
- - assets/subscribe-button/images/stores/blackberry-world-en.png
271
- - assets/subscribe-button/images/stores/google-play-en.png
272
- - assets/subscribe-button/images/stores/google-play-en.svg
273
- - assets/subscribe-button/images/stores/google-play-en@1x.svg
274
- - assets/subscribe-button/images/stores/ios.png
275
- - assets/subscribe-button/images/stores/osx.png
276
- - assets/subscribe-button/images/stores/windows-phone-store-en.png
277
- - assets/subscribe-button/images/stores/windows-phone-store-en.svg
278
- - assets/subscribe-button/images/stores/windows-store-en.png
279
- - assets/subscribe-button/images/stores/windows-store-en.svg
280
- - assets/subscribe-button/images/stores/windows8.png
281
- - assets/subscribe-button/images/stores/windows81.png
282
- - assets/subscribe-button/images/stores/windowsphone.png
283
- - assets/subscribe-button/images/windows/gpodder.png
284
- - assets/subscribe-button/images/windows/itunes.png
285
- - assets/subscribe-button/images/windows/miro.png
286
- - assets/subscribe-button/images/windows/podscout.png
287
- - assets/subscribe-button/images/windowsphone/bringcast.png
288
- - assets/subscribe-button/images/windowsphone/gramocast.png
289
- - assets/subscribe-button/images/windowsphone/ipodcast.png
290
- - assets/subscribe-button/images/windowsphone/pcast.png
291
- - assets/subscribe-button/images/windowsphone/podcastbrain.png
292
- - assets/subscribe-button/images/windowsphone/podcastlounge.png
293
- - assets/subscribe-button/images/windowsphone/podcastpicker.png
294
- - assets/subscribe-button/images/windowsphone/podcasts.png
295
- - assets/subscribe-button/images/windowsphone/podcastspro.png
296
- - assets/subscribe-button/images/windowsphone/wpodder.png
297
- - assets/subscribe-button/javascripts/app.js
298
- - assets/subscribe-button/javascripts/app.js.gz
299
- - assets/subscribe-button/stylesheets/app.css
300
- - assets/subscribe-button/stylesheets/app.css.gz
301
- - assets/subscribe-button/stylesheets/app.css.map
302
- - assets/subscribe-button/stylesheets/app.css.map.gz
303
123
  - bin/octopod
304
124
  - lib/jekyll-octopod.rb
305
125
  - lib/jekyll/date_de.rb
@@ -311,10 +131,11 @@ files:
311
131
  - lib/jekyll/podcast_player_page_generator.rb
312
132
  - lib/jekyll/podlove_player_tag.rb
313
133
  - lib/jekyll/static_file.rb
134
+ - lib/jekyll/theme_layout.rb
314
135
  - lib/jekyll/update_config.rb
315
136
  - lib/kramdown/parser/noopener_gfm.rb
316
137
  - lib/octopod/version.rb
317
- homepage: https://github.com/haslinger/jekyll-octopod
138
+ homepage: https://github.com/jekyll-octopod/jekyll-octopod
318
139
  licenses:
319
140
  - MIT
320
141
  metadata: {}
@@ -1,13 +0,0 @@
1
- {% if site.disqus_shortname %}
2
- <a class="button is-dark is-pulled-right" href="{{ site.url }}{{ post.url }}#disqus_thread">
3
- <script type="text/javascript">
4
- (function () {
5
- {{ site | disqus_config:post }}
6
- var s = document.createElement('script'); s.async = true;
7
- s.type = 'text/javascript';
8
- s.src = 'https://{{ site.disqus_shortname }}.disqus.com/count.js';
9
- (document.getElementsByTagName('HEAD')[0] || document.getElementsByTagName('BODY')[0]).appendChild(s);
10
- }());
11
- </script>
12
- </a>
13
- {% endif %}
@@ -1,13 +0,0 @@
1
- {% if site.disqus_shortname %}
2
- <div id="disqus_thread"></div>
3
- <script type="text/javascript">
4
- {{ site | disqus_config:post }}
5
- (function() {
6
- var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
7
- dsq.src = 'https://{{ site.disqus_shortname }}.disqus.com/embed.js';
8
- (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
9
- })();
10
- </script>
11
- <noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
12
- <a href="https://disqus.com" class="dsq-brlink">comments powered by <span class="logo-disqus">Disqus</span></a>
13
- {% endif %}
@@ -1,6 +0,0 @@
1
- {% if site.use_isso == 'yes' %}
2
- <script data-isso="{{ site.url }}/isso/" src="{{ site.url }}/isso/js/embed.min.js"></script>
3
-
4
- <section id="isso-thread"></section>
5
- <noscript>Please enable JavaScript to view the <a href="https://posativ.org/isso">comments powered by Isso.</a></noscript>
6
- {% endif %}
@@ -1,24 +0,0 @@
1
- {% if post %}
2
- {% elsif page %}
3
- {% assign post = page %}
4
- {% endif %}
5
- <section id="{{ post.id | sha1:8 }}">
6
- {% include post_header.html %}
7
-
8
- {{ post.content }}
9
- {% if post.audio %}
10
- {% for file in post.audio %}
11
- {% if post.filesize %}
12
- <a class="button is-info"
13
- href="{{ site | download_url_with_fallback }}/{{ file.last }}">Download .{{ file.first }} ({{ post | size_by_format: file.first | in_megabytes }})</a>
14
- {% else %}
15
- <a class="button is-info"
16
- href="{{ site | download_url_with_fallback }}/{{ file.last }}">Download .{{ file.first }} ({{ file.last | file_size:'./' | string_of_size }})</a>
17
- {% endif %}
18
- {% endfor %}
19
- {% endif %}
20
- <hr>
21
- {% unless page.url == '/index.html' %}{% include disqus_thread.html %}{% endunless %}
22
- {% unless page.url == '/index.html' %}{% include isso_thread.html %}{% endunless %}
23
- <hr>
24
- </section>
@@ -1,17 +0,0 @@
1
- <div class="block">
2
- <h1 class="title">
3
- <a class='episode_title' href='{{ site.url }}{{ post.url }}#{{ post.id | sha1:8 }}'>{{ post.title }}</a>
4
- </h1>
5
- <h2 class='subtitle episode_date'>
6
- {% if site.language == "de" %}
7
- {{ post.date | full_date_de }}
8
- {% else %}
9
- {% if post.datum %}
10
- {{ post.datum }}
11
- {% else %}
12
- {{ post.date }}
13
- {% endif %}
14
- {% endif %}
15
- </h2>
16
- {% if post.subtitle %}<h2 class="subtitle">{{ post.subtitle }}</h2>{% endif %}
17
- </div>
@@ -1,3 +0,0 @@
1
- <section id="{{ post.id | sha1:8 }}">
2
- {% include post_header.html %}
3
- </section>