ishapi 0.1.8.57 → 0.1.8.58

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d8ddc797c8db2ef08884a2c2248e6a9ddd858ed8
4
- data.tar.gz: 3f7268f8c4a699840def26da0496c31bf389381f
3
+ metadata.gz: 6c92b67c14e6c55592bdc128aa289ff60ed361b2
4
+ data.tar.gz: 735a14c7f9fa8f8d2b7b225fc55c7e91ab9da436
5
5
  SHA512:
6
- metadata.gz: 466a89bd883ab52af7e980a1a5304b175443fc6acaeaaafedcf0e81f84b7494cffc5a7ac06b37ca6370f0a14d375ca2c826be89b28f98c09f6d37d89f3508e1a
7
- data.tar.gz: d0b3089fa5012cced5d33181f3802360747f5752010e110aaab80de356fde717c8ed2f3283bc68a8c016c560326b90b7cd297ebc7d8c40ae6d3f8799bd1dc162
6
+ metadata.gz: d0ad0e81ca3aa3202f03c7fa80ffed7c6d94dd02fb8e4b16fc9276e6ff745faf0cc499390225cbe38d9204df2130344fb9000b4620f12fda7b2ec9d6212e79d7
7
+ data.tar.gz: af92344d2edc48c8e508599a6521e9b042a26dffcca5ef7b0f806a13ad7b582daa2e395243cba11c688a9ebf9358f6c34da3c63fea384cdb724401baada2c114
@@ -0,0 +1,23 @@
1
+ require_dependency "ishapi/application_controller"
2
+
3
+ module Ishapi
4
+ class AddressesController < ApplicationController
5
+ before_action :check_profile, :only => [ :create ]
6
+
7
+ def create
8
+ if @current_profile.addresses.length == 0
9
+ @address = CoTailors::Address.new({ :profile_id => @current_profile.id })
10
+ else
11
+ @address = @current_profile.addresses[0]
12
+ end
13
+ authorize! :update, @address
14
+ flag = @address.update_attributes( params[:address].permit(:name, :phone, :address_1, :address_2, :city, :state, :zipcode ) )
15
+ if flag
16
+ render :json => { :status => :ok, :message => 'Successfully put an address.' }
17
+ else
18
+ render :json => { :status => :not_ok, :error => @address.errors.messages }
19
+ end
20
+ end
21
+
22
+ end
23
+ end
@@ -11,6 +11,19 @@ module Ishapi
11
11
  #
12
12
  private
13
13
 
14
+ # this doesn't generate long-lived token, doesn't update user_profile
15
+ def check_profile
16
+ accessToken = request.headers[:accessToken]
17
+ accessToken ||= params[:fb_long_access_token]
18
+ accessToken ||= params[:accessToken] # if (params[:debug] == 'abba' && Rails.env.development?)
19
+ if accessToken
20
+ @graph = Koala::Facebook::API.new( accessToken )
21
+ @me = @graph.get_object( 'me', :fields => 'email' )
22
+ @current_user = User.find_by :email => @me['email']
23
+ @current_profile = @current_user.profile
24
+ end
25
+ end
26
+
14
27
  def set_profile
15
28
  accessToken = request.headers[:accessToken]
16
29
  accessToken ||= params[:fb_long_access_token]
@@ -24,19 +37,23 @@ module Ishapi
24
37
  @me = @graph.get_object( 'me', :fields => 'email' )
25
38
  @user = User.find_or_create_by :email => @me['email']
26
39
  @oauth = Koala::Facebook::OAuth.new( FB[params['domain']][:app], FB[params['domain']][:secret] )
27
- @long_lived_token = get_long_token( accessToken )
40
+ get_token = get_long_token( accessToken )
41
+ @long_lived_token = get_token['access_token']
28
42
 
29
43
  begin
30
44
  @profile = IshModels::UserProfile.find_by :email => @me['email']
31
45
  @profile.update_attributes({ :fb_access_token => @long_lived_token,
32
- :fb_long_access_token => @long_lived_token })
46
+ :fb_long_access_token => @long_lived_token,
47
+ :fb_expires_in => get_token['expires_in']
48
+ })
33
49
  rescue Mongoid::Errors::DocumentNotFound
34
50
  @profile = IshModels::UserProfile.create :user => @user, :email => @me['email'],
35
- :fb_access_token => @long_lived_token,
36
- :fb_long_access_token => @long_lived_token,
37
- :fb_id => params[:id],
38
- :name => params[:name],
39
- :signed_request => params[:signedRequest]
51
+ :fb_access_token => @long_lived_token,
52
+ :fb_long_access_token => @long_lived_token,
53
+ :fb_expires_in => get_token['expires_in'],
54
+ :fb_id => params[:id],
55
+ :name => params[:name],
56
+ :signed_request => params[:signedRequest]
40
57
  end
41
58
  @current_user = @user
42
59
  @current_profile = @profile
@@ -52,8 +69,7 @@ module Ishapi
52
69
  "client_id=#{FB[params['domain']][:app]}&client_secret=#{FB[params['domain']][:secret]}&fb_exchange_token=#{accessToken}"
53
70
  result = HTTParty.get url
54
71
  token = JSON.parse result.body
55
- puts! token['access_token'], "long access token is"
56
- return token['access_token']
72
+ return token # ['access_token']
57
73
  end
58
74
 
59
75
  def set_current_ability
@@ -2,16 +2,17 @@ require_dependency "ishapi/application_controller"
2
2
 
3
3
  module Ishapi
4
4
  class UsersController < ApplicationController
5
-
6
5
  before_action :set_profile, :only => [ :fb_sign_in, :show ]
7
6
 
8
7
  def fb_sign_in
9
8
  authorize! :fb_sign_in, Ishapi
10
- render :json => { :status => :ok }
9
+ # render :json => { :status => :ok }
10
+ render :action => 'show'
11
11
  end
12
12
 
13
13
  def show
14
14
  authorize! :fb_sign_in, Ishapi
15
+ =begin
15
16
  begin
16
17
  @graph = Koala::Facebook::API.new( params[:accessToken] )
17
18
  me = @graph.get_object( 'me', :fields => 'email' )
@@ -21,11 +22,12 @@ module Ishapi
21
22
  render :json => { :status => :not_ok, :errors => "Probably expired token." }
22
23
  return
23
24
  end
25
+ =end
24
26
  end
25
27
 
28
+ =begin
26
29
  def update
27
30
  authorize! :fb_sign_in, Ishapi
28
-
29
31
  begin
30
32
  @graph = Koala::Facebook::API.new( params[:accessToken] )
31
33
  me = @graph.get_object( 'me', :fields => 'email' )
@@ -37,13 +39,13 @@ module Ishapi
37
39
  flag = false
38
40
  @errors = "Probably expired token."
39
41
  end
40
-
41
42
  if flag
42
43
  render :json => { :status => :ok }
43
44
  else
44
45
  render :json => { :status => :not_ok, :errors => @errors }
45
46
  end
46
47
  end
48
+ =end
47
49
 
48
50
  end
49
51
  end
@@ -16,6 +16,12 @@ class Ishapi::Ability
16
16
  can [ :show ], Gallery do |gallery|
17
17
  gallery.user == user
18
18
  end
19
+
20
+
21
+ can [ :update ], CoTailors::Address do |address|
22
+ puts [ user.inspect, address.inspect ], '+++ user in cancancan'
23
+ true
24
+ end
19
25
 
20
26
  end
21
27
  #
@@ -24,6 +30,8 @@ class Ishapi::Ability
24
30
  user ||= User.new
25
31
 
26
32
  can [ :index, :show ], City
33
+
34
+ can [ :update ], CoTailors::Address
27
35
 
28
36
  can [ :index, :show ], Event
29
37
 
@@ -0,0 +1,12 @@
1
+
2
+ # ishapi / addresses / _show
3
+
4
+ json.address do
5
+ json.name address.name
6
+ json.phone address.phone
7
+ json.address_1 address.address_1
8
+ json.address_2 address.address_2
9
+ json.city address.city
10
+ json.state address.state
11
+ json.zipcode address.zipcode
12
+ end
@@ -3,13 +3,18 @@
3
3
  # ishapi / users / _show.jbuilder
4
4
  #
5
5
 
6
- json.email @user_profile.email
7
- json.about @user_profile.about
8
- json.lang @user_profile.lang
9
- json.name @user_profile.name
10
- json.fb_long_access_token @long_lived_token
11
-
12
- if @user_profile.current_city
13
- json.current_city_id @user_profile.current_city_id.to_s
14
- json.current_city @user_profile.current_city
6
+ json.email @current_profile.email
7
+ json.about @current_profile.about
8
+ json.lang @current_profile.lang
9
+ json.name @current_profile.name
10
+ json.fb_long_access_token @current_profile.fb_long_access_token
11
+ json.expires_in @current_profile.fb_expires_in
12
+
13
+ if @current_profile.current_city
14
+ json.current_city_id @current_profile.current_city_id.to_s
15
+ json.current_city @current_profile.current_city
16
+ end
17
+
18
+ if @current_profile.addresses[0]
19
+ json.partial! 'ishapi/addresses/show', :address => @current_profile.addresses[0]
15
20
  end
@@ -1,8 +1,8 @@
1
1
 
2
2
  FB = {
3
3
  '_default' => {
4
- :app => '',
5
- :secret => ''
4
+ :app => 'trahs',
5
+ :secret => 'trhas'
6
6
  },
7
7
  'travel-guide.mobi' => {
8
8
  :app => '123014244977505',
data/config/routes.rb CHANGED
@@ -2,6 +2,8 @@ Ishapi::Engine.routes.draw do
2
2
  root :to => 'api#home'
3
3
  post 'home', :to => 'api#home'
4
4
 
5
+ resources :addresses
6
+
5
7
  get 'cities', :to => 'cities#index'
6
8
  get 'cities/view/:cityname', :to => 'cities#show'
7
9
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ishapi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.8.57
4
+ version: 0.1.8.58
5
5
  platform: ruby
6
6
  authors:
7
7
  - piousbox
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-01-02 00:00:00.000000000 Z
11
+ date: 2018-01-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -166,6 +166,7 @@ files:
166
166
  - app/assets/stylesheets/ishapi/application.css
167
167
  - app/assets/stylesheets/ishapi/articles.css
168
168
  - app/assets/stylesheets/scaffold.css
169
+ - app/controllers/ishapi/addresses_controller.rb
169
170
  - app/controllers/ishapi/api_controller.rb
170
171
  - app/controllers/ishapi/api_controller.rb~
171
172
  - app/controllers/ishapi/application_controller.rb
@@ -201,6 +202,7 @@ files:
201
202
  - app/models/ishapi/ability.rb~
202
203
  - app/models/ishapi/application_record.rb
203
204
  - app/models/ishapi/article.rb
205
+ - app/views/ishapi/addresses/_show.jbuilder
204
206
  - app/views/ishapi/application/_meta.jbuilder
205
207
  - app/views/ishapi/application/_meta.jbuilder~
206
208
  - app/views/ishapi/articles/_form.html.erb