social 0.0.11 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (40) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +72 -40
  3. data/lib/social.rb +65 -30
  4. data/lib/social/balance.rb +1 -14
  5. data/lib/social/config/ok.rb +16 -18
  6. data/lib/social/config/vk.rb +15 -17
  7. data/lib/social/determinant.rb +4 -0
  8. data/lib/social/determinant/request_param.rb +56 -0
  9. data/lib/social/determinant/social_prefix.rb +81 -0
  10. data/lib/social/env.rb +21 -15
  11. data/lib/social/network.rb +9 -1
  12. data/lib/social/network/base.rb +60 -9
  13. data/lib/social/network/graph.rb +1 -40
  14. data/lib/social/network/graph/ok.rb +1 -5
  15. data/lib/social/network/graph/ok/base.rb +50 -56
  16. data/lib/social/network/graph/ok/notification.rb +9 -15
  17. data/lib/social/network/graph/ok/user.rb +61 -67
  18. data/lib/social/network/graph/tail.rb +14 -20
  19. data/lib/social/network/graph/vk.rb +1 -5
  20. data/lib/social/network/graph/vk/base.rb +27 -33
  21. data/lib/social/network/graph/vk/notification.rb +11 -17
  22. data/lib/social/network/graph/vk/user.rb +55 -61
  23. data/lib/social/network/ok.rb +9 -17
  24. data/lib/social/network/stub.rb +2 -7
  25. data/lib/social/network/vk.rb +9 -17
  26. data/lib/social/version.rb +1 -1
  27. data/social.gemspec +1 -0
  28. data/spec/lib/social/ok_api_spec.rb +8 -8
  29. data/spec/lib/social/vk_api_spec.rb +2 -2
  30. data/spec/spec_helper.rb +1 -4
  31. metadata +80 -48
  32. data/lib/social/auth.rb +0 -4
  33. data/lib/social/auth/controller.rb +0 -144
  34. data/lib/social/builder.rb +0 -22
  35. data/lib/social/cache.rb +0 -26
  36. data/lib/social/helper.rb +0 -4
  37. data/lib/social/helper/controller.rb +0 -43
  38. data/lib/social/helper/model.rb +0 -61
  39. data/lib/social/network/params.rb +0 -31
  40. data/lib/social/provider.rb +0 -42
@@ -1,4 +0,0 @@
1
- module Social
2
- module Helper
3
- end
4
- end
@@ -1,43 +0,0 @@
1
- # Add helper methods for Social in base controller class
2
- module Social
3
- module Helper
4
- module Controller
5
-
6
- def self.included(base)
7
- base.instance_eval do
8
- helper_method :current_social_type, :current_social_type_id, :current_social_prefix
9
- before_filter :init_social_env
10
- end
11
- end
12
-
13
- # Helper, returned social type id from request
14
- # (controller, view).current_social_type_id
15
- def current_social_type_id
16
- @current_social_type_id ||= params[:soc_id]
17
- end
18
-
19
- # Helper, returned social type from request
20
- # (controller, view).current_social_type
21
- def current_social_type
22
- @current_social_type ||= params[:soc_type]
23
- end
24
-
25
- # Helper, returned social type prefix from request
26
- # (controller, view).current_social_type_prefix
27
- def current_social_prefix
28
- @current_social_prefix ||= params[:soc_prefix]
29
- end
30
-
31
- protected
32
-
33
- def init_social_env
34
- #Social.current_id = params[:soc_id]
35
- #Social.current_type = params[:soc_type]
36
- #Social.current_prefix = params[:soc_prefix]
37
-
38
- Social::Env.init(params)
39
- end
40
-
41
- end
42
- end
43
- end
@@ -1,61 +0,0 @@
1
- # Add helper methods for Social in user model class (Active record)
2
- module Social
3
- module Helper
4
- module Model
5
-
6
- def self.included(base)
7
- base.instance_eval do
8
- attr_accessor :auth_params
9
- end
10
- end
11
-
12
- # Alias for model.current_social_type
13
- # model.current_provider String
14
- # @params social_type_id = nil
15
- def current_provider(social_type_id = nil)
16
- current_social_type(social_type_id)
17
- end
18
-
19
- # Return current social type or social type by social_type_id
20
- # model.current_social_type String
21
- # @params social_type_id = nil
22
- def current_social_type(social_type_id = nil)
23
- if social_type_id
24
- @current_provider = Social.type_by_id(social_type_id)
25
- elsif auth_params && auth_params[:social_type]
26
- @current_provider = auth_params[:social_type]
27
- else
28
- @current_provider = Social::Env.type
29
- end
30
-
31
- @current_provider
32
- end
33
-
34
- # Return current social type id
35
- # model.current_social_type String
36
- def current_social_type_id()
37
- unless @current_social_type_id
38
- @current_social_type_id = Social::Env.id
39
- end
40
-
41
- @current_social_type_id
42
- end
43
-
44
- # Make standart hash (for js) from model data
45
- # model.to_hash hash
46
- # @params params = {}
47
- def to_hash(params = {})
48
- {
49
- :id => id,
50
- :first_name => first_name,
51
- :last_name => last_name,
52
- :uid => social_references.last.uid,
53
- :name => "#{first_name} #{last_name}",
54
- :gender => (male? ? 'male' : 'female'),
55
- :birthday => birthdate
56
- }
57
- end
58
-
59
- end
60
- end
61
- end
@@ -1,31 +0,0 @@
1
- module Social
2
- module Network
3
- module Params
4
-
5
- def params()
6
- @params
7
- end
8
-
9
- def params!(params)
10
- @params = params
11
- self
12
- end
13
-
14
- def param(key)
15
- @params[key]
16
- end
17
-
18
- def param!(key, value)
19
- @params[key] = value
20
- self
21
- end
22
-
23
- protected
24
-
25
- def init_params(params)
26
- @params = params.is_a?(Hash) ? params : {}
27
- end
28
-
29
- end
30
- end
31
- end
@@ -1,42 +0,0 @@
1
- module Social
2
- class Provider
3
- def self.build(prefix)
4
-
5
- klass = Class.new do
6
-
7
- class << self
8
- attr_accessor :prefix
9
- end
10
-
11
- def initialize(app)
12
- @app = app
13
- end
14
-
15
- def call(env)
16
- request = Rack::Request.new(env)
17
-
18
- prefix = self.class.prefix
19
- type = Social.type_by_prefix(prefix)
20
- id = Social.id_by_type(type)
21
-
22
- request.GET['social_env'] = {
23
- 'prefix' => prefix,
24
- 'type' => type,
25
- 'id' => id
26
- }
27
-
28
- # Old
29
- request.GET['soc_prefix'] = prefix
30
- request.GET['soc_type'] = type
31
- request.GET['soc_id'] = id
32
-
33
- @app.call(request.env)
34
- end
35
-
36
- end
37
-
38
- klass.prefix = prefix
39
- klass
40
- end
41
- end
42
- end