unidom-visitor 1.7 → 1.8

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ce5626e7f7f18035b1810fdf38072bed11847762
4
- data.tar.gz: deabd161fa0f86386c75c6f3145935f08273261f
3
+ metadata.gz: 1039cdfc9483bce1ae792b1927c290dd1bb1a4fe
4
+ data.tar.gz: db3e19bc847504447ca25bfdee0099c28d6bc725
5
5
  SHA512:
6
- metadata.gz: d0152d168add99774ad704c18dec95e8531a91e899a234d1e31235c6633cb131a6b0274584dbbcae7ded7782ec78fb4185f73931c33395ef4f314dc5e0609065
7
- data.tar.gz: 45a3541e5cc136636f5a130915eaf6b6ac98c9600059e222abda76927b6b6de48f953feb41c317b496693ba391d86c014d470719ec132f1b293ccb51c0d29e0a
6
+ metadata.gz: 37e8ce876225bec3bc119d9f999c9f63f5af41725d5a7788aaaacd7857abd9425639eacc92d298c4c5ec27f9710e42221e971bc4daa3dc372f8f468179d0ffc6
7
+ data.tar.gz: 05e70ecd150bee453e44dee1198aeb1a9b7d99027af72a78ba6432293fcf53f4cbb4d79d91dafe9da4d6fe1ba5447c52d05364a78fafff3b47fe399ed6ebb2d1
data/README.md CHANGED
@@ -84,6 +84,7 @@ Unidom::Visitor::Recognization.cognize! user, as: person
84
84
  include Unidom::Visitor::Concerns::AsVisitor
85
85
  include Unidom::Visitor::Concerns::AsIdentity
86
86
  include Unidom::Visitor::Concerns::AsCredential
87
+ include Unidom::Visitor::Concerns::AsParty
87
88
  ```
88
89
 
89
90
  ### As Visitor concern
@@ -93,25 +94,26 @@ The As Visitor concern do the following tasks for the includer automatically:
93
94
  2. Define the has_many :authenticatings macro as: ``has_many :authenticatings, class_name: 'Unidom::Visitor::Authenticating', as: :visitor``
94
95
  3. Define the has_many :recognizations macro as: ``has_many :recognizations, class_name: 'Unidom::Visitor::Recognization', as: :visitor``
95
96
  4. Define the .identified_by scope as: ``scope :identified_by, ->(identity) { joins(:identificatings).merge(Unidom::Visitor::Identificating.identity_is identity) }``
96
- 5. Define the .sign_up method as: ``sign_up(identity, password: nil, opened_at: Time.now)``
97
- 6. Define the #is_identificated! method as: ``is_identificated!(as: nil, at: Time.now)``
98
- 7. Define the #is_authenticated! method as: ``is_authenticated!(through: nil, at: Time.now, flag_code: 'RQRD')``
99
- 8. Define the #cognize! method as: ``cognize!(it, at: Time.now, primary: true)``
97
+ 5. Define the .sign_up method as: ``sign_up(identity, password: nil, opened_at: Time.now)``
98
+ 6. Define the #is_identificated! method as: ``is_identificated!(as: nil, at: Time.now)``
99
+ 7. Define the #is_authenticated! method as: ``is_authenticated!(through: nil, at: Time.now, flag_code: 'RQRD')``
100
+ 8. Define the #cognize! method as: ``cognize!(it, at: Time.now, primary: true)``
101
+ 9. Define the .sign_up! method as: ``sign_up!(it, as: nil, through: nil, at: Time.now, flag_code: 'RQRD', primary: true)``
100
102
 
101
103
  ### As Identity concern
102
104
 
103
105
  The As Identity concern do the following tasks for the includer automatically:
104
- 1. Define the has_many :identificatings macro as: ``has_many :identificatings, class_name: 'Unidom::Visitor::Identificating', as: :identity``
106
+ 1. Define the has_many :identificatings macro as: ``has_many :identificatings, class_name: 'Unidom::Visitor::Identificating', as: :identity``
105
107
  2. Define the #identificate! method as: ``identificate!(it, at: Time.now)``
106
108
 
107
109
  ### As Credential concern
108
110
 
109
111
  The As Credential concern do the following tasks for the includer automatically:
110
- 1. Define the has_one :authenticatings macro as: ``has_one :authenticating, class_name: 'Unidom::Visitor::Authenticating', as: :credential``
112
+ 1. Define the has_one :authenticatings macro as: ``has_one :authenticating, class_name: 'Unidom::Visitor::Authenticating', as: :credential``
111
113
  2. Define the #authenticate! method as: ``authenticate!(it, at: Time.now, flag_code: 'RQRD')``
112
114
 
113
115
  ### As Party concern
114
116
 
115
117
  The As Party concern do the following tasks for the includer automatically:
116
- 1. Define the has_many :recognizations macro as: ``has_many :recognizations, class_name: 'Unidom::Visitor::Recognization', as: :party``
118
+ 1. Define the has_many :recognizations macro as: ``has_many :recognizations, class_name: 'Unidom::Visitor::Recognization', as: :party``
117
119
  2. Define the #is_cognized! method as: ``is_cognized!(via: nil, at: Time.now, primary: true)``
@@ -11,6 +11,17 @@ module Unidom::Visitor::Concerns::AsCredential
11
11
  create_authenticating! visitor: it, flag_code: flag_code, opened_at: at
12
12
  end
13
13
 
14
+ =begin
15
+ def authenticate?(it, at: Time.now, flag_code: 'RQRD')
16
+ return false if authenticating.blank?
17
+ result = true
18
+ result &&= it==authenticating.visitor if it.present?
19
+ result &&= at<=authenticating.closed_at&&at>=authenticating.opened_at if at.present?
20
+ result &&= flag_code==authenticating.flag_code if flag_code.present?
21
+ result
22
+ end
23
+ =end
24
+
14
25
  end
15
26
 
16
27
  module ClassMethods
@@ -10,6 +10,15 @@ module Unidom::Visitor::Concerns::AsIdentity
10
10
  identificatings.create! visitor: it, opened_at: at
11
11
  end
12
12
 
13
+ =begin
14
+ def identificate?(it, at: Time.now)
15
+ query = identificatings
16
+ query = query.visitor_is it if it.present?
17
+ query = query.valid_at now: at if at.present?
18
+ query.alive.exists?
19
+ end
20
+ =end
21
+
13
22
  end
14
23
 
15
24
  module ClassMethods
@@ -10,6 +10,16 @@ module Unidom::Visitor::Concerns::AsParty
10
10
  recognizations.create! visitor: via, elemental: primary, opened_at: at
11
11
  end
12
12
 
13
+ =begin
14
+ def is_cognized?(via: nil, at: Time.now, primary: true)
15
+ query = recognizations
16
+ query = query.visitor_is via if via.present?
17
+ query = query.primary primary unless primary.nil?
18
+ query = query.valid_at now: at if at.present?
19
+ query = query.alive.exists?
20
+ end
21
+ =end
22
+
13
23
  end
14
24
 
15
25
  module ClassMethods
@@ -16,6 +16,15 @@ module Unidom::Visitor::Concerns::AsVisitor
16
16
  identificatings.create! identity: as, opened_at: at
17
17
  end
18
18
 
19
+ =begin
20
+ def is_identificated?(as: nil, at: Time.now)
21
+ query = identificatings
22
+ query = query.identity_is as if as.present?
23
+ query = query.valid_at now: at if at.present?
24
+ query.alive.exists?
25
+ end
26
+ =end
27
+
19
28
  def is_authenticated!(through: nil, at: Time.now, flag_code: 'RQRD')
20
29
  if through.authenticating.present?
21
30
  through.authenticating
@@ -24,22 +33,41 @@ module Unidom::Visitor::Concerns::AsVisitor
24
33
  end
25
34
  end
26
35
 
36
+ =begin
37
+ def is_authenticated?(through: nil, at: Time.now, flag_code: 'RQRD')
38
+ query = authenticatings
39
+ query = query.credential_is through if through.present?
40
+ query = query.flag_coded_as flag_code if flag_code.present?
41
+ query = query.valid_at now: at if at.present?
42
+ query.alive.exists?
43
+ end
44
+ =end
45
+
27
46
  def cognize!(it, at: Time.now, primary: true)
28
47
  recognizations.create! party: it, elemental: primary, opened_at: at
29
48
  end
30
49
 
50
+ =begin
51
+ def cognize?(it, at: Time.now, primary: true)
52
+ query = recognizations
53
+ query = query.party_is it if it.present?
54
+ query = query.primary primary unless primary.nil?
55
+ query = query.valid_at now: at if at.present?
56
+ query.alive.exists?
57
+ end
58
+ =end
59
+
31
60
  end
32
61
 
33
62
  module ClassMethods
34
63
 
35
- =begin
36
64
  def sign_up!(it, as: nil, through: nil, at: Time.now, flag_code: 'RQRD', primary: true)
37
- cognize! it, primary: true, at: at
38
- is_identificated! as: as, at: at
39
- is_authenticated! through: through, at: at
40
- self
65
+ user = create! opened_at: at
66
+ user.cognize! it, primary: true, at: at
67
+ user.is_identificated! as: as, at: at
68
+ user.is_authenticated! through: through, at: at
69
+ user
41
70
  end
42
- =end
43
71
 
44
72
  end
45
73
 
@@ -1,5 +1,5 @@
1
1
  module Unidom
2
2
  module Visitor
3
- VERSION = '1.7'.freeze
3
+ VERSION = '1.8'.freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: unidom-visitor
3
3
  version: !ruby/object:Gem::Version
4
- version: '1.7'
4
+ version: '1.8'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Topbit Du
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-10-12 00:00:00.000000000 Z
11
+ date: 2016-10-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: unidom-common