bible270 1.8.0 → 1.8.3
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 +4 -4
- data/CHANGELOG.md +59 -7
- data/README.md +1 -1
- data/app/controllers/bible270/readers_controller.rb +1 -0
- data/app/views/bible270/admin/show.html.erb +22 -21
- data/app/views/bible270/profiles/edit.html.erb +1 -0
- data/app/views/bible270/readers/index.html.erb +1 -1
- data/app/views/bible270/readers/progress.html.erb +1 -1
- data/app/views/bible270/readers/show.html.erb +1 -1
- data/app/views/bible270/shared/_day_index.html.erb +2 -2
- data/app/views/bible270/shared/_reflections.html.erb +5 -1
- data/app/views/layouts/bible270/application.html.erb +1 -1
- data/lib/bible270/plan.rb +3 -1
- data/lib/bible270/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: be8007d9a8bdb9c797652387e0a4e8751e5fed2aa29d088d98287ca7d2b7e77a
|
|
4
|
+
data.tar.gz: d71275e3b9097162a126c3129e635a09ad5ee8bd43a899e349c619cd9e633473
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 59e2a645945d342632584219ac34231c458ccbe504b925009835144e4aa2b49c7fc9b6c61a169366c9a78e087d8e94648dea50a4a8c44906ca1ab77c3d40b08f
|
|
7
|
+
data.tar.gz: 7e4947ed4bebe9581261d18e2851ca3afab2661f94ab682f1759d5ce5f301d7b0353de97df88303b17ff2a5788a9ddf4484247018082abf814e86602501677da
|
data/CHANGELOG.md
CHANGED
|
@@ -4,18 +4,64 @@ All notable changes to bible270. Format follows [Keep a Changelog](https://keepa
|
|
|
4
4
|
|
|
5
5
|
## [Unreleased]
|
|
6
6
|
|
|
7
|
+
### Changed
|
|
8
|
+
|
|
9
|
+
- keep Proverbs 7 whole and divide Proverbs 10 and 16 into four readings
|
|
10
|
+
|
|
11
|
+
**[Full Changelog](https://github.com/avonderluft/bible270/compare/v1.8.1...main)**
|
|
12
|
+
|
|
13
|
+
## [1.8.1] - 2026-09-19
|
|
14
|
+
|
|
15
|
+
### Changed
|
|
16
|
+
|
|
17
|
+
- add a Today link and shorter introduction to Community
|
|
18
|
+
- allow readers to edit recent reflections from My Progress
|
|
19
|
+
- open the day grid by default on reader and Profile pages
|
|
20
|
+
- move Admin completions below translation settings
|
|
21
|
+
|
|
22
|
+
**[Full Changelog](https://github.com/avonderluft/bible270/compare/v1.8.0...v1.8.1)**
|
|
23
|
+
|
|
24
|
+
## [1.8.0] - 2026-09-18
|
|
25
|
+
|
|
7
26
|
### Added
|
|
8
27
|
|
|
9
|
-
- add
|
|
10
|
-
|
|
11
|
-
|
|
28
|
+
- let readers add named YouTube videos to reflections and replies with on-demand playback
|
|
29
|
+
|
|
30
|
+
**[Full Changelog](https://github.com/avonderluft/bible270/compare/v1.7.3...v1.8.0)**
|
|
31
|
+
|
|
32
|
+
## [1.7.3] - 2026-09-17
|
|
12
33
|
|
|
13
34
|
### Changed
|
|
14
35
|
|
|
15
|
-
-
|
|
16
|
-
|
|
36
|
+
- show each reader's last activity date in Reader Stats and `bible270:readers:list`
|
|
37
|
+
|
|
38
|
+
**[Full Changelog](https://github.com/avonderluft/bible270/compare/v1.7.2...v1.7.3)**
|
|
39
|
+
|
|
40
|
+
## [1.7.2] - 2026-09-17
|
|
41
|
+
|
|
42
|
+
### Changed
|
|
43
|
+
|
|
44
|
+
- link reader emails and recent-activity days in Admin
|
|
45
|
+
- show each activity day's readings on hover
|
|
46
|
+
|
|
47
|
+
**[Full Changelog](https://github.com/avonderluft/bible270/compare/v1.7.1...v1.7.2)**
|
|
48
|
+
|
|
49
|
+
## [1.7.1] - 2026-09-17
|
|
50
|
+
|
|
51
|
+
### Added
|
|
52
|
+
|
|
53
|
+
- sort Admin readers and Reader Stats by most or least recent activity
|
|
54
|
+
|
|
55
|
+
**[Full Changelog](https://github.com/avonderluft/bible270/compare/v1.7.0...v1.7.1)**
|
|
56
|
+
|
|
57
|
+
## [1.7.0] - 2026-09-17
|
|
58
|
+
|
|
59
|
+
### Added
|
|
60
|
+
|
|
61
|
+
- show each reader's latest reading activity in Admin
|
|
62
|
+
- show Blue Letter Bible Scripture popups in reflections and previews using each reader's selected translation
|
|
17
63
|
|
|
18
|
-
**[Full Changelog](https://github.com/avonderluft/bible270/compare/v1.6.2...
|
|
64
|
+
**[Full Changelog](https://github.com/avonderluft/bible270/compare/v1.6.2...v1.7.0)**
|
|
19
65
|
|
|
20
66
|
## [1.6.2] - 2026-09-14
|
|
21
67
|
|
|
@@ -736,7 +782,13 @@ This is the initial public release.
|
|
|
736
782
|
|
|
737
783
|
* Email sign-in requires working Action Mailer delivery in the host application. Set `config.mailer_from`; delivery is inline by default, or set `email_sign_in_deliver_later` when a queue backend is available.
|
|
738
784
|
|
|
739
|
-
[Unreleased]: https://github.com/avonderluft/bible270/compare/v1.
|
|
785
|
+
[Unreleased]: https://github.com/avonderluft/bible270/compare/v1.8.1...HEAD
|
|
786
|
+
[1.8.1]: https://github.com/avonderluft/bible270/releases/tag/v1.8.1
|
|
787
|
+
[1.8.0]: https://github.com/avonderluft/bible270/releases/tag/v1.8.0
|
|
788
|
+
[1.7.3]: https://github.com/avonderluft/bible270/releases/tag/v1.7.3
|
|
789
|
+
[1.7.2]: https://github.com/avonderluft/bible270/releases/tag/v1.7.2
|
|
790
|
+
[1.7.1]: https://github.com/avonderluft/bible270/releases/tag/v1.7.1
|
|
791
|
+
[1.7.0]: https://github.com/avonderluft/bible270/releases/tag/v1.7.0
|
|
740
792
|
[1.6.2]: https://github.com/avonderluft/bible270/releases/tag/v1.6.2
|
|
741
793
|
[1.6.1]: https://github.com/avonderluft/bible270/releases/tag/v1.6.1
|
|
742
794
|
[1.6.0]: https://github.com/avonderluft/bible270/releases/tag/v1.6.0
|
data/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Bible 270
|
|
2
2
|
[](https://github.com/avonderluft/comfortable-media-surfer/actions/workflows/rubyonrails.yml) [](https://coveralls.io/github/avonderluft/bible270?branch=main) [](https://rubygems.org/gems/bible270) [](https://rubygems.org/gems/bible270) [](https://github.com/avonderluft/bible270/releases)
|
|
3
3
|
|
|
4
|
-
A mountable **Rails engine** that drops a 270-day (9 month) interactive Bible reading plan into any Rails app, built with [
|
|
4
|
+
A mountable **Rails engine** that drops a 270-day (9 month) interactive Bible reading plan into any Rails app, built with [ComfyMiddleSeat](https://github.com/avonderluft/comfy-middle-seat) CMS in mind. Readers tick off each day's readings, post reflections, and see how everyone else is getting on, much like the social plans on Bible.com.
|
|
5
5
|
|
|
6
6
|
Initially created for use by students and faculty of [Kingdom Movement School of Ministry](https://www.kmsm.life/), to read through all of Scripture together during the school year. Thus it is potentially useful for any Bible School, Seminary, or Discipleship school working on a 9 month schedule.
|
|
7
7
|
|
|
@@ -6,6 +6,7 @@ module Bible270
|
|
|
6
6
|
# Community is a directory of fellow readers, not a leaderboard. Keep the
|
|
7
7
|
# order predictable without implying that progress determines standing.
|
|
8
8
|
@readers = Reader.all.to_a.sort_by(&:sort_name)
|
|
9
|
+
@today_day = current_reader&.today_day
|
|
9
10
|
@show_admin_progress = Bible270.config.admin?(current_reader)
|
|
10
11
|
@days_completed = Reader.completed_days_by_id if @show_admin_progress
|
|
11
12
|
end
|
|
@@ -113,27 +113,6 @@
|
|
|
113
113
|
numbers and are not touched.</p>
|
|
114
114
|
</div>
|
|
115
115
|
|
|
116
|
-
<div class="b270-panel">
|
|
117
|
-
<h2 class="b270-subhead">Completions</h2>
|
|
118
|
-
<%= form_with url: admin_reader_through_path(@reader), method: :patch, class: "b270-startform" do %>
|
|
119
|
-
<label class="b270-field">
|
|
120
|
-
<span>Mark complete through day (0 clears everything)</span>
|
|
121
|
-
<%= number_field_tag :day, @days_completed, min: 0, max: Bible270::Plan::DAYS %>
|
|
122
|
-
</label>
|
|
123
|
-
<%= submit_tag 'Apply', class: 'b270-btn' %>
|
|
124
|
-
<% end %>
|
|
125
|
-
<p class="b270-hint">This also clears anything after that day, so it sets their progress exactly.</p>
|
|
126
|
-
|
|
127
|
-
<div class="b270-grid" style="margin-top:16px">
|
|
128
|
-
<% (1..Bible270::Plan::DAYS).each do |d| %>
|
|
129
|
-
<%= button_to d, admin_reader_day_path(@reader, d), method: :post,
|
|
130
|
-
class: b270_day_cell_classes(d, reader: @reader),
|
|
131
|
-
title: b270_day_readings(d),
|
|
132
|
-
form: { style: 'display:contents', id: "day-#{d}" } %>
|
|
133
|
-
<% end %>
|
|
134
|
-
</div>
|
|
135
|
-
<p class="b270-hint">Click a day to toggle it complete.</p>
|
|
136
|
-
</div>
|
|
137
116
|
|
|
138
117
|
<div class="b270-panel">
|
|
139
118
|
<%= render "bible270/shared/reflections", comments: @comments, moderate: true %>
|
|
@@ -162,6 +141,28 @@
|
|
|
162
141
|
<% end %>
|
|
163
142
|
</div>
|
|
164
143
|
|
|
144
|
+
<div class="b270-panel">
|
|
145
|
+
<h2 class="b270-subhead">Completions</h2>
|
|
146
|
+
<%= form_with url: admin_reader_through_path(@reader), method: :patch, class: "b270-startform" do %>
|
|
147
|
+
<label class="b270-field">
|
|
148
|
+
<span>Mark complete through day (0 clears everything)</span>
|
|
149
|
+
<%= number_field_tag :day, @days_completed, min: 0, max: Bible270::Plan::DAYS %>
|
|
150
|
+
</label>
|
|
151
|
+
<%= submit_tag 'Apply', class: 'b270-btn' %>
|
|
152
|
+
<% end %>
|
|
153
|
+
<p class="b270-hint">This also clears anything after that day, so it sets their progress exactly.</p>
|
|
154
|
+
|
|
155
|
+
<div class="b270-grid" style="margin-top:16px">
|
|
156
|
+
<% (1..Bible270::Plan::DAYS).each do |d| %>
|
|
157
|
+
<%= button_to d, admin_reader_day_path(@reader, d), method: :post,
|
|
158
|
+
class: b270_day_cell_classes(d, reader: @reader),
|
|
159
|
+
title: b270_day_readings(d),
|
|
160
|
+
form: { style: 'display:contents', id: "day-#{d}" } %>
|
|
161
|
+
<% end %>
|
|
162
|
+
</div>
|
|
163
|
+
<p class="b270-hint">Click a day to toggle it complete.</p>
|
|
164
|
+
</div>
|
|
165
|
+
|
|
165
166
|
<div class="b270-panel">
|
|
166
167
|
<h2 class="b270-subhead">Remove</h2>
|
|
167
168
|
<p class="b270-hint" style="margin-top:0">Deletes the reader together with every check-off and
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<% content_for :title, "Community — #{Bible270.config.app_name}" %>
|
|
2
2
|
<p class="b270-eyebrow">Community</p>
|
|
3
3
|
<h1>Reading together</h1>
|
|
4
|
-
<p class="lede">
|
|
4
|
+
<p class="lede">Walking through the Word, sharing reflections and encouraging one another.<% if @today_day %> <%= link_to "Go to today (Day #{@today_day})", day_path(@today_day), class: "b270-todaylink" %><% end %></p>
|
|
5
5
|
|
|
6
6
|
<% if @readers.any? %>
|
|
7
7
|
<div class="b270-list">
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
<% if @reader %>
|
|
14
14
|
<div class="b270-panel">
|
|
15
15
|
<%= render "bible270/shared/reflections", comments: @recent_comments,
|
|
16
|
-
title: "Your recent reflections",
|
|
16
|
+
title: "Your recent reflections", editable: true,
|
|
17
17
|
empty_text: "You have not written any reflections yet." %>
|
|
18
18
|
</div>
|
|
19
19
|
<% end %>
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
<%# locals: (reader: nil) %>
|
|
1
|
+
<%# locals: (reader: nil, expanded: false) %>
|
|
2
2
|
<% if Bible270::Plan::DAYS.positive? %>
|
|
3
3
|
<% grid_reader = reader || current_reader %>
|
|
4
4
|
<% today = signed_in? && grid_reader == current_reader ? current_reader.today_day : nil %>
|
|
5
|
-
<details class="b270-index"
|
|
5
|
+
<details class="b270-index"<%= " open" if expanded %>>
|
|
6
6
|
<summary>View all <%= Bible270::Plan::DAYS %> days</summary>
|
|
7
7
|
<div class="b270-grid">
|
|
8
8
|
<% (1..Bible270::Plan::DAYS).each do |d| %>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<%# locals: (comments:, title: "Their reflections", moderate: false, empty_text: "None yet.") %>
|
|
1
|
+
<%# locals: (comments:, title: "Their reflections", moderate: false, editable: false, empty_text: "None yet.") %>
|
|
2
2
|
<%#
|
|
3
3
|
A reader's reflections. Three views showed near-identical markup: the admin
|
|
4
4
|
page, a reader's public page, and the progress page, differing only in whether
|
|
@@ -21,6 +21,10 @@
|
|
|
21
21
|
<%= link_to "Day #{comment.day}", day_path(comment.day) %>
|
|
22
22
|
· <%= b270_date(comment.created_at) %>
|
|
23
23
|
<% if moderate && comment.hidden? %><span class="b270-badge">Hidden</span><% end %>
|
|
24
|
+
<% if editable && b270_can_edit?(comment) %>
|
|
25
|
+
<%= link_to "edit", day_path(comment.day, edit: comment.id, anchor: "comment-#{comment.id}"),
|
|
26
|
+
class: "b270-cedit" %>
|
|
27
|
+
<% end %>
|
|
24
28
|
</div>
|
|
25
29
|
|
|
26
30
|
<div class="b270-cbody"><%= b270_comment_body(comment) %></div>
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
<% if flash[:notice] %><div class="b270-flash notice"><%= flash[:notice] %></div><% end %>
|
|
21
21
|
<%= yield %>
|
|
22
22
|
<%# Pages with their own day grid opt out with content_for :hide_day_index %>
|
|
23
|
-
<%= render 'bible270/shared/day_index' unless content_for?(:hide_day_index) %>
|
|
23
|
+
<%= render 'bible270/shared/day_index', expanded: content_for?(:expand_day_index) unless content_for?(:hide_day_index) %>
|
|
24
24
|
<%= b270_footer %>
|
|
25
25
|
</div>
|
|
26
26
|
<%= render "bible270/shared/scripture_popups" %>
|
data/lib/bible270/plan.rb
CHANGED
|
@@ -442,9 +442,11 @@ module Bible270
|
|
|
442
442
|
['Proverbs', 4] => [9, 19], # a father's teaching | the two paths | guard the heart
|
|
443
443
|
['Proverbs', 5] => [14], # the adulteress | your own cistern
|
|
444
444
|
['Proverbs', 6] => [19], # surety, sluggard, seven abominations | adultery
|
|
445
|
-
['Proverbs', 7] => [
|
|
445
|
+
['Proverbs', 7] => [], # the seduction warning stays whole
|
|
446
446
|
['Proverbs', 8] => [11, 21], # Wisdom calls | her worth | Wisdom at creation
|
|
447
447
|
['Proverbs', 9] => [6, 12], # Wisdom's feast | scoffer and wise | Folly's feast
|
|
448
|
+
['Proverbs', 10] => [8, 16, 24], # four groups of independent sayings
|
|
449
|
+
['Proverbs', 16] => [9, 17, 25], # four near-even groups of independent sayings
|
|
448
450
|
['Proverbs', 30] => [9, 17], # Agur's confession | four sayings | the numbered proverbs
|
|
449
451
|
['Proverbs', 22] => [16], # sayings | words of the wise
|
|
450
452
|
['Proverbs', 23] => [8, 21, 28],
|
data/lib/bible270/version.rb
CHANGED