unimedia_ip_checker 0.0.4 → 0.0.5

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 +8 -8
  2. data/lib/ip_checker.rb +22 -15
  3. metadata +1 -1
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- NGY5MmFhNDM5OTBlYTM5OTE2YzcyNThjZmJjMWJjOWU1MmFhN2EyZQ==
4
+ NTk3ZTM5NTA3ZjM0NzBhZDBjY2Y0NTNkOWUwMjQzMTRiMTJkZDc1NQ==
5
5
  data.tar.gz: !binary |-
6
- MTUxMTY1ZmQxMTllZTE5NjViODQzNDI2NGRjMzhiOTM4NjJiMjYwZA==
6
+ YWI1Mzc3NzFlYWRiM2Q5N2FlOTNjZTZjODg0OTE3OWI2NWQ3MTk0NQ==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- YmYzY2FlOTQ4OTM5ODMzNGE5MzYwY2ZkODEyMDFlOGFlYzVlODkzMDY4NGE3
10
- OGQyY2M4MjEzZDIyZDkwNjI4ZjE2YWFjMWM4ZTRlM2FhN2MzMjk5NGZkYjgx
11
- MzE3NmMzYmVkMTgxZGVmZWNkNzFlOTY0ZGI5ZmU3NDQzYzZmN2Y=
9
+ N2JiMjViOTYxMjVmNTdkOGVlYzZhNGU4MmU4ZWUwYzljMzg4NDBlYmUzNzE3
10
+ MGI0OGVhNmY3MmQ0MmFkODYwNzk1ZWZkZTMwMmZlMmQzMTk1YjUwNWEzNzc3
11
+ Mzg1Nzc0MDllNmMwZGI3Y2VhZGIxMDM1ZWM4NDA2ZmRiN2ZiMzY=
12
12
  data.tar.gz: !binary |-
13
- NzlkODJmMjk0YjU0YWVkYzRlMDBmNWUwM2QwZDdmMjM0ZWNmYmFiYmFjMzg5
14
- OTE4MTlkZjU2NTlkMTkxNzU5YzQwNTNlNTViODMwNmViZDk0OGU2MDlmZWE5
15
- YWQzMWM3MmExZGJlZTMyZTQwYzBmMDQyZjBkYmE0MDNlNWY5NzA=
13
+ ODQxZGIxNjc0OTc2NzY3MWQ3ZGQ1ZmU0YWNmOTI5ZWRiN2M1ZThlZDdkYWVk
14
+ YmFhMDJiNTEzNTE4YmRiMGIwMmRmZWQyYjI5ZmJjZDQ2MDZhMjNhMzQ4NTZj
15
+ MDNlYmY4ZDAzOTc5ZWYxMjBlZjhiZjc4NWVlOGU1ZWUzMjI2NTE=
data/lib/ip_checker.rb CHANGED
@@ -3,26 +3,33 @@ class IpChecker
3
3
  @project_name = project_name
4
4
  end
5
5
 
6
-
7
- def is_block_myip(request)
8
- ip = request.env["HTTP_X_FORWARDED_FOR"] || request.remote_ip
9
- # :auth_type = 1 block
10
- # :auth_type = 0 allow
6
+ def is_block_ip(request)
7
+ ip = request.env["HTTP_X_FORWARDED_FOR"] || request.remote_ip
8
+ # :auth_type = 1 block
9
+ # :auth_type = 0 allow
10
+ connection = ActiveRecord::Base.connection()
11
+ any_ip = connection.execute("SELECT *
12
+ FROM
13
+ dtb_ip_address_block
14
+ WHERE
15
+ dtb_ip_address_block.ip_address = 'all'
16
+ AND dtb_ip_address_block.auth_type = 1
17
+ AND dtb_ip_address_block.project = '#{@project_name}';")
11
18
 
12
- any_ip = Base::DtbIpAddressBlock.where(:ip_address => 'all', :auth_type => 1, :project => @project_name).first
13
-
14
- white_list_ip = any_ip && any_ip.auth_type.to_s == '1' ? true : false
19
+ white_list_ip = any_ip.first && any_ip.first[2].to_s == '1' ? true : false
20
+
21
+ ip_address = connection.execute(" SELECT *
22
+ FROM
23
+ dtb_ip_address_block
24
+ WHERE
25
+ dtb_ip_address_block.ip_address = '#{ip}'
26
+ AND dtb_ip_address_block.project = '#{@project_name}'")
15
27
 
16
- ip_address = Base::DtbIpAddressBlock.where(:ip_address => ip, :project => @project_name).first
17
-
18
28
  if white_list_ip
19
- # black list
20
- return true if ip_address
21
- else
22
- # white list
23
- return true unless ip_address
29
+ return ip_address.first ? true : false
24
30
  end
25
31
  return false
26
32
 
27
33
  end
34
+
28
35
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: unimedia_ip_checker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Zulnemekh Bekhbat