Skip to content

Commit 9c5c8fb

Browse files
committed
Register name navigation methods
1 parent 766d7f0 commit 9c5c8fb

1 file changed

Lines changed: 14 additions & 0 deletions

File tree

app/models/name.rb

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@ class Name < ApplicationRecord
7878
)
7979
belongs_to(:register, optional: true)
8080
belongs_to(:tutorial, optional: true)
81+
has_many(:register_names, -> { order(:name_order) }, through: :register)
8182

8283
before_validation(:observe_nomenclatural_type_entry)
8384
before_validation(:harmonize_register_and_status)
@@ -1118,6 +1119,19 @@ def add_to_register(register, user)
11181119
save
11191120
end
11201121

1122+
def index_in_register
1123+
@index_in_register ||=
1124+
register_names.pluck(:id).index { |i| i == id }
1125+
end
1126+
1127+
def previous_register_name
1128+
register_names[index_in_register - 1] if index_in_register.try(:nonzero?)
1129+
end
1130+
1131+
def next_register_name
1132+
register_names[index_in_register] unless index_in_register.nil?
1133+
end
1134+
11211135
def notified?
11221136
!!register.try(:notified?)
11231137
end

0 commit comments

Comments
 (0)