login-control 0.0.17 → 0.0.19

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 (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/login_control_module.rb +6 -5
  3. metadata +3 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4c994c7999c34ab1e07335a16f36d527834a8591f6848f6009aa894ed5a12076
4
- data.tar.gz: 2822fe19d6389196d1fb487924087d981635b828a176601543f44a606e99292c
3
+ metadata.gz: 0e4c23e8dd34a5d41a6fe9721704245b7558b64b551241d690d855dfeb861ce2
4
+ data.tar.gz: 714cf2f085bac9032caffe95ace58625681d918e494fd7d3fcb275e8b96a2d2b
5
5
  SHA512:
6
- metadata.gz: c8ffc4147cdf9c9ba480fc1e243b37076ef4cc849076ecfe16077104123801452010003817c1d59002b11eadf3be64d42069f680a4d978655735df75f884b02a
7
- data.tar.gz: 70e576d62335077e76f27f9661dfbc7f3d32dd139220e5390abc7d699c8b56c8877c29c5926d374d89e5083508342e4654b50da10c3dacddd3ec779008233427
6
+ metadata.gz: 8ffaf5942442b3446ebb70018d4387bbe40f6319b5a2ea50b4d1475a11d9a788e48d493eefc131e824ce0a23ae4c13f4eb2a150d2e9c02e504002c82ad1dd801
7
+ data.tar.gz: c3ba66e2f604cb032e61c8f3ba935f42320cae6c74dee3abeb6294b3303f6840ab30272694285ea2593d0f3cfc3f43c52e60cd70a03a4b4868b36d49f82db83e
@@ -45,20 +45,21 @@ module LoginControlModule
45
45
 
46
46
  def find_or_build_rc_record(scope, login_name)
47
47
  id = cookies.encrypted.permanent[:login_control]
48
- if id.present?
49
- rc_record(scope, login_name, id: id)
50
- else
48
+ res = nil
49
+ res = rc_record(scope, login_name, id: id) if id.present?
50
+ unless res
51
51
  id = SecureRandom.hex(20)
52
52
  logger.info "LoginControlModule.find_or_build_rc_record => created cookie by id: «#{id}»" if debug_request_control
53
53
  cookies.encrypted.permanent[:login_control] = id
54
- LoginControl.new(session_id: id, scope: scope, login_name: login_name, validate_captcha: true)
54
+ res = LoginControl.new(session_id: id, scope: scope, login_name: login_name, validate_captcha: true)
55
55
  end
56
+ res
56
57
  end
57
58
 
58
59
  # read cookie «login_control»
59
60
  def rc_record(scope, login_name, id: cookies.encrypted.permanent[:login_control])
60
61
  if id
61
- lc = LoginControl.find_by(session_id: id, scope: scope, login_name: login_name)
62
+ lc = LoginControl.find_or_initialize_by(session_id: id, scope: scope, login_name: login_name)
62
63
  logger.info "LoginControlModule.rc_record => #{lc ? '' : 'NOT '}found by session_id: «#{id}» #{lc ? ", record-id: #{lc.id}" : ''}" if debug_request_control
63
64
  lc
64
65
  else
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: login-control
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.17
4
+ version: 0.0.19
5
5
  platform: ruby
6
6
  authors:
7
7
  - Christian Sedlmair
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-01-28 00:00:00.000000000 Z
11
+ date: 2023-09-30 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Based on Login Attempts check if captcha is necessary. It stores a permanent
14
14
  cookie and uses a table for tracking login requests.
@@ -39,7 +39,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  requirements: []
42
- rubygems_version: 3.3.17
42
+ rubygems_version: 3.4.12
43
43
  signing_key:
44
44
  specification_version: 4
45
45
  summary: Lib for simplifying and securing login.