social_stream-oauth2_server 2.0.0.beta1

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 (69) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +10 -0
  3. data/Gemfile +5 -0
  4. data/README.rdoc +3 -0
  5. data/Rakefile +26 -0
  6. data/app/assets/images/logos/small/site.png +0 -0
  7. data/app/assets/javascripts/social_stream-oauth2_server.js +6 -0
  8. data/app/assets/javascripts/social_stream/site_client.js +15 -0
  9. data/app/assets/stylesheets/social_stream-oauth2_server.css.sass +24 -0
  10. data/app/assets/stylesheets/social_stream/oauth2_server/applications/_applications-oauth2server.css.sass +45 -0
  11. data/app/assets/stylesheets/social_stream/oauth2_server/applications/layout/_applications-oauth2server.css.sass +51 -0
  12. data/app/assets/stylesheets/social_stream/oauth2_server/applications/responsive/_responsive-1200px-min.css.sass +7 -0
  13. data/app/assets/stylesheets/social_stream/oauth2_server/applications/responsive/_responsive-767px-max.css.sass +35 -0
  14. data/app/assets/stylesheets/social_stream/oauth2_server/applications/responsive/_responsive-768px-979px.css.sass +8 -0
  15. data/app/assets/stylesheets/social_stream/oauth2_server/create/_create-oauth2server.css.sass +11 -0
  16. data/app/assets/stylesheets/social_stream/oauth2_server/create/_error_create-oauth2server.css.sass +13 -0
  17. data/app/assets/stylesheets/social_stream/oauth2_server/create/layout/_create-oauth2server.css.sass +19 -0
  18. data/app/assets/stylesheets/social_stream/oauth2_server/create/responsive/_responsive-1200px-min.css.sass +7 -0
  19. data/app/assets/stylesheets/social_stream/oauth2_server/create/responsive/_responsive-767px-max.css.sass +16 -0
  20. data/app/assets/stylesheets/social_stream/oauth2_server/create/responsive/_responsive-768px-979px.css.sass +8 -0
  21. data/app/assets/stylesheets/social_stream/oauth2_server/show/_show-oauth2server.css.sass +42 -0
  22. data/app/assets/stylesheets/social_stream/oauth2_server/show/layout/_show-oauth2server.css.sass +71 -0
  23. data/app/assets/stylesheets/social_stream/oauth2_server/show/responsive/_responsive-1200px-min.css.sass +7 -0
  24. data/app/assets/stylesheets/social_stream/oauth2_server/show/responsive/_responsive-767px-max.css.sass +16 -0
  25. data/app/assets/stylesheets/social_stream/oauth2_server/show/responsive/_responsive-768px-979px.css.sass +8 -0
  26. data/app/controllers/authorizations_controller.rb +67 -0
  27. data/app/controllers/site/clients_controller.rb +39 -0
  28. data/app/decorators/social_stream/base/actor_decorator.rb +3 -0
  29. data/app/decorators/social_stream/base/user_decorator.rb +3 -0
  30. data/app/helpers/site_client_helper.rb +17 -0
  31. data/app/models/oauth2_token.rb +33 -0
  32. data/app/models/oauth2_token/access_token.rb +32 -0
  33. data/app/models/oauth2_token/authorization_code.rb +5 -0
  34. data/app/models/oauth2_token/refresh_token.rb +7 -0
  35. data/app/models/relation/admin.rb +9 -0
  36. data/app/models/relation/auth.rb +8 -0
  37. data/app/models/site/client.rb +38 -0
  38. data/app/overrides/frontpage/_presentation/client_site_presentation.html.erb.deface +8 -0
  39. data/app/overrides/layouts/_header_dropdown_menu/applications_entry.html.erb.deface +4 -0
  40. data/app/views/authorizations/error.html.erb +4 -0
  41. data/app/views/authorizations/new.html.erb +27 -0
  42. data/app/views/site/clients/_form.html.erb +39 -0
  43. data/app/views/site/clients/_new.modal.html.erb +9 -0
  44. data/app/views/site/clients/_presentation.html.erb +13 -0
  45. data/app/views/site/clients/index.html.erb +42 -0
  46. data/app/views/site/clients/new.html.erb +10 -0
  47. data/app/views/site/clients/show.html.erb +44 -0
  48. data/config/locales/en.yml +29 -0
  49. data/config/locales/es.yml +29 -0
  50. data/config/routes.rb +10 -0
  51. data/db/migrate/20130115102300_create_social_stream_oauth2_server.rb +25 -0
  52. data/lib/generators/social_stream/oauth2_server/install_generator.rb +23 -0
  53. data/lib/social_stream-oauth2_server.rb +19 -0
  54. data/lib/social_stream/migrations/oauth2_server.rb +8 -0
  55. data/lib/social_stream/oauth2_server.rb +5 -0
  56. data/lib/social_stream/oauth2_server/controllers/helpers.rb +41 -0
  57. data/lib/social_stream/oauth2_server/engine.rb +21 -0
  58. data/lib/social_stream/oauth2_server/models/actor.rb +11 -0
  59. data/lib/social_stream/oauth2_server/models/user.rb +35 -0
  60. data/lib/social_stream/oauth2_server/token_endpoint.rb +41 -0
  61. data/lib/social_stream/oauth2_server/version.rb +5 -0
  62. data/lib/tasks/db/populate.rake +37 -0
  63. data/social_stream-oauth2_server.gemspec +19 -0
  64. data/spec/controllers/authorizations_controller_spec.rb +179 -0
  65. data/spec/controllers/dummy_controller_spec.rb +43 -0
  66. data/spec/factories/site_client.rb +6 -0
  67. data/spec/models/relation/auth_spec.rb +15 -0
  68. data/spec/models/site/client_spec.rb +22 -0
  69. metadata +156 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: b25a88e655c69efdc439e96aa132462b232e43c5
4
+ data.tar.gz: 12e63fe3a205656b2216048de447571109b128a3
5
+ SHA512:
6
+ metadata.gz: 6ca006233a29b14603efe843ef392b67de7057058eb61260c4a8e6e39d9f6ab6804b3626652f7a4097297d551c6b439fe98396f0ad1f972e4c7eff02154d3496
7
+ data.tar.gz: 635390b44a440b8ba1643e3c4a54ed08ce0b1cea2eaae56716b044a223954bede6957facb7e138c62a818f7d6d73675e0aeb64ba4b3a68b79ada1d592bbd9796
@@ -0,0 +1,10 @@
1
+ pkg/*
2
+ .bundle
3
+ **.tmp_*
4
+ Gemfile.lock
5
+ .idea
6
+ nbproject
7
+ .loadpath
8
+ .project
9
+ .DS_Store
10
+ .yardoc/*
data/Gemfile ADDED
@@ -0,0 +1,5 @@
1
+ source "http://rubygems.org"
2
+
3
+ gem 'social_stream-base', :path => '../base'
4
+
5
+ gemspec
@@ -0,0 +1,3 @@
1
+ = Social Stream OAuth2 Server
2
+
3
+ Provide your site with OAuth2 Server capabilities
@@ -0,0 +1,26 @@
1
+ # encoding: UTF-8
2
+ require 'bundler/gem_tasks'
3
+
4
+ require 'rdoc/task'
5
+
6
+ require 'rspec/core'
7
+ require 'rspec/core/rake_task'
8
+
9
+ RSpec::Core::RakeTask.new(:spec)
10
+
11
+ task :default => :spec
12
+
13
+ Rake::RDocTask.new(:rdoc) do |rdoc|
14
+ rdoc.rdoc_dir = 'rdoc'
15
+ rdoc.title = 'Socialstream OAuth2 Server'
16
+ rdoc.options << '--line-numbers' << '--inline-source'
17
+ rdoc.rdoc_files.include('README.rdoc')
18
+ rdoc.rdoc_files.include('lib/**/*.rb')
19
+ end
20
+
21
+ # Modify this gem's tags
22
+ class Bundler::GemHelper
23
+ def version_tag
24
+ "oauth2_server#{version}"
25
+ end
26
+ end
@@ -0,0 +1,6 @@
1
+ //= require social_stream-base
2
+ //
3
+ //= require_self
4
+ //= require_tree ./social_stream
5
+
6
+ SocialStream.Oauth2Server = SocialStream.Oauth2Server || {};
@@ -0,0 +1,15 @@
1
+ //= require social_stream/callback
2
+
3
+ SocialStream.SiteClient = (function(SS, $, undefined) {
4
+ var callback = new SS.Callback();
5
+
6
+ var initNewModal = function() {
7
+ $('.new_site_client-modal-link').attr('href', '#new_site_client-modal');
8
+ };
9
+
10
+ callback.register('index', initNewModal);
11
+
12
+ return callback.extend({
13
+ });
14
+
15
+ })(SocialStream, jQuery);
@@ -0,0 +1,24 @@
1
+ @import "social_stream/oauth2_server/applications/applications-oauth2server"
2
+ @import "social_stream/oauth2_server/applications/layout/applications-oauth2server"
3
+
4
+ @import "social_stream/oauth2_server/applications/responsive/responsive-1200px-min"
5
+ @import "social_stream/oauth2_server/applications/responsive/responsive-768px-979px"
6
+ @import "social_stream/oauth2_server/applications/responsive/responsive-767px-max"
7
+
8
+
9
+ @import "social_stream/oauth2_server/create/create-oauth2server"
10
+ @import "social_stream/oauth2_server/create/layout/create-oauth2server"
11
+
12
+ @import "social_stream/oauth2_server/create/responsive/responsive-1200px-min"
13
+ @import "social_stream/oauth2_server/create/responsive/responsive-768px-979px"
14
+ @import "social_stream/oauth2_server/create/responsive/responsive-767px-max"
15
+
16
+ @import "social_stream/oauth2_server/create/error_create-oauth2server"
17
+
18
+
19
+ @import "social_stream/oauth2_server/show/show-oauth2server"
20
+ @import "social_stream/oauth2_server/show/layout/show-oauth2server"
21
+
22
+ @import "social_stream/oauth2_server/show/responsive/responsive-1200px-min"
23
+ @import "social_stream/oauth2_server/show/responsive/responsive-768px-979px"
24
+ @import "social_stream/oauth2_server/show/responsive/responsive-767px-max"
@@ -0,0 +1,45 @@
1
+ #site_clients
2
+ .site_clients
3
+ header
4
+ font-size: 21px
5
+ color: $gray
6
+ a
7
+ font-size: 14px
8
+ .btn
9
+ @extend .btn-blue
10
+ .soften
11
+ @include opacity (100)
12
+
13
+ .name,
14
+ .url,
15
+ .users
16
+ color: $gray
17
+
18
+ .name
19
+ font-size: 16px
20
+
21
+ .url
22
+ a
23
+ color: $gray
24
+ &:hover
25
+ color: $blue
26
+
27
+ .users
28
+ font-size: 16px
29
+ span
30
+ color: $blue
31
+
32
+ #new_site_client-modal
33
+ .modal-body
34
+ input
35
+ &[type="file"]
36
+ line-height: 0px
37
+
38
+ .field_with_errors
39
+ input
40
+ &[type="text"]
41
+ background-clor: red
42
+
43
+ #new_application
44
+ .btn
45
+ @extend .btn-blue
@@ -0,0 +1,51 @@
1
+ #site_clients
2
+ @include grid-core-span(12, $fluidGridColumnWidth, $fluidGridGutterWidth)
3
+ #toolbar
4
+ display: none !important
5
+ .site_clients
6
+ @include grid-core-span(12, $fluidGridColumnWidth, $fluidGridGutterWidth)
7
+ header
8
+ a
9
+ float: right
10
+ .button_to
11
+ float: right
12
+ .soften
13
+ margin: 9px 0 10px 0
14
+ clear: both
15
+ img
16
+ display: inline
17
+ @include size (40px, 40px)
18
+ float: left
19
+
20
+ .name,
21
+ .url,
22
+ .users
23
+ display: inline-block
24
+
25
+ .name,
26
+ .url
27
+ margin-left: 20px
28
+ @include grid-core-span(7, $fluidGridColumnWidth, $fluidGridGutterWidth)
29
+
30
+ .users
31
+ @include grid-core-span(3, $fluidGridColumnWidth, $fluidGridGutterWidth)
32
+ float: right
33
+ margin-top: -8px
34
+ text-align: right
35
+
36
+
37
+ #new_site_client-modal
38
+ .modal-body
39
+ max-height: 520px
40
+ padding: 0 15px 15px 15px
41
+ form.new_site_client
42
+ margin-left: 0px
43
+ width: 100%
44
+ .name,
45
+ .url
46
+ margin-left: 0px
47
+ width: 100%
48
+ input
49
+ &[type="file"]
50
+ line-height: 0px
51
+
@@ -0,0 +1,7 @@
1
+ //
2
+ // Responsive: Large desktop and up
3
+ // --------------------------------------------------
4
+
5
+
6
+ @media (min-width: 1200px)
7
+
@@ -0,0 +1,35 @@
1
+ //
2
+ // Responsive: Landscape phone to desktop/tablet
3
+ // --------------------------------------------------
4
+
5
+
6
+ @media (max-width: 767px)
7
+
8
+ #new_site_client
9
+ .new_site_client
10
+ @include grid-core-span(12, $fluidGridColumnWidth, $fluidGridGutterWidth)
11
+ h1
12
+ @extend .hidden-phone
13
+ @extend .hidden-tablet
14
+ #error_explanation
15
+ h2
16
+ font-size: 20px
17
+ #new_application
18
+ section
19
+ input
20
+ &[type="file"],
21
+ &[type="text"]
22
+ @include grid-core-span(11, $fluidGridColumnWidth, $fluidGridGutterWidth)
23
+ margin-left: 2.9%
24
+ textarea
25
+ @include grid-core-span(11, $fluidGridColumnWidth, $fluidGridGutterWidth)
26
+ margin-left: 2.9%
27
+
28
+
29
+
30
+ // UP TO LANDSCAPE PHONE
31
+ // ---------------------
32
+
33
+ @media (max-width: 480px)
34
+
35
+
@@ -0,0 +1,8 @@
1
+ //
2
+ // Responsive: Tablet to desktop
3
+ // --------------------------------------------------
4
+
5
+
6
+ @media (min-width: 768px) and (max-width: 1119px)
7
+
8
+
@@ -0,0 +1,11 @@
1
+ #content
2
+ .box
3
+ @include border-radius (5px)
4
+ background-color: whitesmoke
5
+ .image
6
+ @include border-radius (5px)
7
+ background-color: $white
8
+
9
+
10
+
11
+
@@ -0,0 +1,13 @@
1
+ #error_explanation
2
+ h2
3
+ color: #bc8f8f
4
+ font-size: 30px
5
+ ul
6
+ background-color: $white
7
+ border-radius: 3px
8
+ padding: 19px
9
+ li
10
+ padding-bottom: 6px
11
+ list-style: initial
12
+ margin-left: 12px
13
+ font-size: 15px
@@ -0,0 +1,19 @@
1
+ #content
2
+ .box
3
+ padding: 14px 20px 74px 20px
4
+ input
5
+ width: 60%
6
+ &[type="submit"]
7
+ width: 100%
8
+ margin-top: 10px
9
+ .upload
10
+ float: right
11
+ margin: -25px 6px 0px 0px
12
+ .image
13
+ width: 135px
14
+ height: 135px
15
+ margin-top: -131px
16
+
17
+
18
+
19
+
@@ -0,0 +1,7 @@
1
+ //
2
+ // Responsive: Large desktop and up
3
+ // --------------------------------------------------
4
+
5
+
6
+ @media (min-width: 1200px)
7
+
@@ -0,0 +1,16 @@
1
+ //
2
+ // Responsive: Landscape phone to desktop/tablet
3
+ // --------------------------------------------------
4
+
5
+
6
+ @media (max-width: 767px)
7
+
8
+
9
+
10
+
11
+ // UP TO LANDSCAPE PHONE
12
+ // ---------------------
13
+
14
+ @media (max-width: 480px)
15
+
16
+
@@ -0,0 +1,8 @@
1
+ //
2
+ // Responsive: Tablet to desktop
3
+ // --------------------------------------------------
4
+
5
+
6
+ @media (min-width: 768px) and (max-width: 1119px)
7
+
8
+
@@ -0,0 +1,42 @@
1
+ #new_application
2
+ section
3
+ border-bottom: 1px dashed #ccc
4
+ label
5
+ font-size: 22px
6
+ font-weight: bold
7
+ color: #ccc
8
+
9
+
10
+ #oauth2_server
11
+ h1
12
+ text-align: left
13
+ .content
14
+ @include gradient-vertical($startColor: #ccc, $endColor: #f9f9f9)
15
+ .media
16
+ .media-body
17
+ .name,
18
+ .url,
19
+ .users
20
+ color: $gray
21
+ .name
22
+ font-size: 16px
23
+ .url
24
+ a
25
+ color: $gray
26
+ &:hover
27
+ color: $blue
28
+ .result,
29
+ .client_secret
30
+ background-color: #f9f9f9
31
+ @extend border-radius-5
32
+ font-size: 15px
33
+
34
+ .client_secret
35
+ border: 1px solid ccc
36
+ overflow-y: hidden
37
+ overflow-x: scroll
38
+
39
+ .users
40
+ font-size: 16px
41
+ span
42
+ color: $blue
@@ -0,0 +1,71 @@
1
+ #new_application
2
+ padding: 5px 7px
3
+ form
4
+ margin: 0 0 40px
5
+ section
6
+ padding-top: 15px
7
+ label
8
+ padding-left: 14px
9
+ .title
10
+ input
11
+ @include size(26px, 97%)
12
+ .url,
13
+ .callback_url
14
+ textarea
15
+ display: inline
16
+ @include size(21px, 97%)
17
+ padding-top: 7px
18
+
19
+ .description
20
+ height: 100px
21
+ textarea
22
+ display: inline-block
23
+ @include size (52px, 97%)
24
+ padding-top: 7px
25
+ input
26
+ &[type="submit"]
27
+ float: right
28
+ margin-top: 14px
29
+ margin-right: 1px
30
+
31
+
32
+ #oauth2_server
33
+ width: 80%
34
+ margin-left: 2.85%
35
+ display: inline-block
36
+ h1
37
+ @include clearfix
38
+ margin-bottom: 4px
39
+ .soften
40
+ margin-bottom: 0px
41
+ .content
42
+ padding: 14px
43
+ .media
44
+ margin-top: 0
45
+ .media-body
46
+ margin-left: 2.85%
47
+ img
48
+ display: inline
49
+ @include size (40px, 40px)
50
+ h4
51
+ margin-bottom: 0px
52
+ .name,
53
+ .url,
54
+ .users
55
+ display: inline-block
56
+ .name,
57
+ .url
58
+ margin-left: 20px
59
+
60
+ .result,
61
+ .client_secret
62
+ padding: 7px
63
+ margin-bottom: 20px
64
+
65
+ .client_secret
66
+ height: 23px
67
+ p
68
+ width: 250%
69
+ .users
70
+ float: right
71
+ margin-top: 7px