wired 0.0.6 → 0.0.7

Sign up to get free protection for your applications and to get access to all the features.
data/bin/wired CHANGED
@@ -1,7 +1,15 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
- if ARGV[0].length > 20
4
- raise "Name can't be longer than 20 characters. (#{ARGV[0]} is #{ARGV[0].length})"
3
+ if ARGV.empty?
4
+ raise "Provide an app name"
5
+ else
6
+ if ARGV[0].length < 3
7
+ raise "Name needs to be longer than 3 characters. (#{ARGV[0]} is #{ARGV[0].length})"
8
+ end
9
+
10
+ if ARGV[0].length > 20
11
+ raise "Name can't be longer than 20 characters. (#{ARGV[0]} is #{ARGV[0].length})"
12
+ end
5
13
  end
6
14
 
7
15
  require File.expand_path(File.join('..', 'lib', 'wired', 'generators', 'app_generator'), File.dirname(__FILE__))
@@ -33,6 +33,14 @@ module Wired
33
33
  bundle_command 'exec rake db:create'
34
34
  end
35
35
 
36
+ def run_migrations
37
+ bundle_command 'exec rake db:migrate'
38
+ end
39
+
40
+ def generate_user_model
41
+ run 'rails g model User name email fbid'
42
+ end
43
+
36
44
  def create_partials_directory
37
45
  empty_directory 'app/views/application'
38
46
  end
@@ -152,7 +160,9 @@ module Wired
152
160
 
153
161
  def add_safari_cookie_fix
154
162
  facebook_cookie_fix =<<-COOKIE_FIX
163
+ helper_method :current_user
155
164
  before_filter :safari_cookie_fix
165
+ before_filter :add_global_javascript_variables
156
166
 
157
167
  def cookie
158
168
  #safari third party cookie fix
@@ -160,9 +170,18 @@ module Wired
160
170
 
161
171
  private
162
172
 
173
+ def current_user
174
+ @current_user ||= User.find_by_fbid session[:fbid]
175
+ end
176
+
163
177
  def safari_cookie_fix
164
178
  cookies[:safari_cookie_fix] = "cookie" #safari third party cookie fix
165
179
  end
180
+
181
+ def add_global_javascript_variables
182
+ Gon.global.facebook = { 'app_id' => ENV["FB_APP_ID"] }
183
+ Gon.global.current_user = current_user
184
+ end
166
185
  COOKIE_FIX
167
186
  inject_into_file "app/controllers/application_controller.rb", facebook_cookie_fix, :before => "end"
168
187
  copy_file 'facebook/safari-cookie-fix.js.coffee', 'app/assets/javascripts/safari-cookie-fix.js.coffee'
@@ -53,6 +53,8 @@ module Wired
53
53
  build :add_facebook_controllers
54
54
  build :create_facebook_views
55
55
  build :add_safari_cookie_fix
56
+ build :generate_user_model
57
+ build :run_migrations
56
58
  end
57
59
  end
58
60
 
data/lib/wired/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Wired
2
- VERSION = '0.0.6'
2
+ VERSION = '0.0.7'
3
3
  end
@@ -23,3 +23,4 @@ gem 'asset_sync'
23
23
  gem 'mobylette'
24
24
  gem 'simple_form'
25
25
  gem 'flutie'
26
+ gem 'gon'
@@ -3,6 +3,7 @@ class TabController < ApplicationController
3
3
 
4
4
  def home
5
5
  if params[:signed_request]
6
+ set_fbid_session_if_authenticated_before_with_facebook
6
7
  redirect_to :fangate unless liked?
7
8
  else
8
9
  redirect_to "http://www.facebook.com/#{ENV['FB_PAGE_NAME']}/app_#{ENV['FB_APP_ID']}" unless is_mobile_view?
@@ -24,6 +25,16 @@ class TabController < ApplicationController
24
25
  end
25
26
  end
26
27
 
28
+ def set_fbid_session_if_authenticated_before_with_facebook
29
+ if params[:signed_request]
30
+ encoded_request = params[:signed_request]
31
+ json_request = decode_data(encoded_request)
32
+ signed_request = JSON.parse(json_request)
33
+
34
+ session[:fbid] = signed_request['user_id']
35
+ end
36
+ end
37
+
27
38
  def base64_url_decode str
28
39
  encoded_str = str.gsub('-','+').gsub('_','/')
29
40
  encoded_str += '=' while !(encoded_str.size % 4).zero?
@@ -4,6 +4,7 @@
4
4
  <meta charset="utf-8" />
5
5
  <title><%%= page_title %></title>
6
6
  <%%= stylesheet_link_tag :application, :media => 'all' %>
7
+ <%%= include_gon %>
7
8
  <%%= javascript_include_tag :application %>
8
9
  <%%= csrf_meta_tags %>
9
10
  </head>
metadata CHANGED
@@ -1,18 +1,20 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wired
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - Wirelab Creative
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2013-04-19 00:00:00.000000000 Z
12
+ date: 2013-05-02 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: rails
15
16
  requirement: !ruby/object:Gem::Requirement
17
+ none: false
16
18
  requirements:
17
19
  - - '='
18
20
  - !ruby/object:Gem::Version
@@ -20,6 +22,7 @@ dependencies:
20
22
  type: :runtime
21
23
  prerelease: false
22
24
  version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
23
26
  requirements:
24
27
  - - '='
25
28
  - !ruby/object:Gem::Version
@@ -27,6 +30,7 @@ dependencies:
27
30
  - !ruby/object:Gem::Dependency
28
31
  name: bundler
29
32
  requirement: !ruby/object:Gem::Requirement
33
+ none: false
30
34
  requirements:
31
35
  - - ! '>='
32
36
  - !ruby/object:Gem::Version
@@ -34,6 +38,7 @@ dependencies:
34
38
  type: :runtime
35
39
  prerelease: false
36
40
  version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
37
42
  requirements:
38
43
  - - ! '>='
39
44
  - !ruby/object:Gem::Version
@@ -41,6 +46,7 @@ dependencies:
41
46
  - !ruby/object:Gem::Dependency
42
47
  name: hub
43
48
  requirement: !ruby/object:Gem::Requirement
49
+ none: false
44
50
  requirements:
45
51
  - - ~>
46
52
  - !ruby/object:Gem::Version
@@ -48,6 +54,7 @@ dependencies:
48
54
  type: :runtime
49
55
  prerelease: false
50
56
  version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
51
58
  requirements:
52
59
  - - ~>
53
60
  - !ruby/object:Gem::Version
@@ -81,27 +88,27 @@ files:
81
88
  - wired.gemspec
82
89
  homepage: https://github.com/Wirelab/wired
83
90
  licenses: []
84
- metadata: {}
85
91
  post_install_message:
86
92
  rdoc_options:
87
93
  - --charset=UTF-8
88
94
  require_paths:
89
95
  - lib
90
96
  required_ruby_version: !ruby/object:Gem::Requirement
97
+ none: false
91
98
  requirements:
92
99
  - - ! '>='
93
100
  - !ruby/object:Gem::Version
94
101
  version: '0'
95
102
  required_rubygems_version: !ruby/object:Gem::Requirement
103
+ none: false
96
104
  requirements:
97
105
  - - ! '>='
98
106
  - !ruby/object:Gem::Version
99
107
  version: '0'
100
108
  requirements: []
101
109
  rubyforge_project:
102
- rubygems_version: 2.0.0
110
+ rubygems_version: 1.8.23
103
111
  signing_key:
104
- specification_version: 4
112
+ specification_version: 3
105
113
  summary: Wirelab Generator
106
114
  test_files: []
107
- has_rdoc:
checksums.yaml DELETED
@@ -1,15 +0,0 @@
1
- ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- MjdlNzMzNTIzOTk2NDkyMmUwMGMwYjg1N2VkOTA1ZGMzMTIzMjUzMA==
5
- data.tar.gz: !binary |-
6
- YTIwYWJhZGI4NDY1NWMwYjgxMmY3N2JhYWQzMDM4OGQ0NmMwMmExMg==
7
- !binary "U0hBNTEy":
8
- metadata.gz: !binary |-
9
- ZDJjZDQwOGYxNjZhOTVmOTM4YWIxYmVkYjcwNzcxYTI5OTBjYWUwODI5NjFk
10
- MWM3MGUxMjU0NzFiODQwYjlmMDg2MzhkNGNhNDQ1ZmFhZTQ3OGYyMjU3MmZh
11
- ZDFjZWM4YWQ5NDI3ZGFlMTIyNWJlYzk1M2IzOWVkNjhlM2E2MjE=
12
- data.tar.gz: !binary |-
13
- NzUwMjA2ZWE3MGJlOTg4Nzg0MjAwZTU3Yjk1YWViMzg0NWU5MzU1N2E5OWE5
14
- ODI4NTA1ZWRiYzcwMmQ4OTI5MGE5NGE2NzJlNmU0YjA3NThhNDAwODQ4Zjdl
15
- YTViMjNkODZmYTcxZTNiZWY0MGVkNGQwNDAyMzJhMTE3MWFjMWE=