ishapi 0.1.8.162 → 0.1.8.167
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 +4 -4
- data/app/controllers/ishapi/application_controller.rb +57 -57
- data/app/controllers/ishapi/maps_controller.rb +41 -30
- data/app/models/ishapi/ability.rb +31 -24
- data/app/views/ishapi/cities/features.jbuilder +1 -1
- data/app/views/ishapi/cities/index.jbuilder +1 -1
- data/app/views/ishapi/maps/_show.jbuilder +1 -0
- data/app/views/ishapi/maps/show.jbuilder +14 -3
- data/app/views/ishapi/markers/_index.jbuilder +1 -1
- metadata +3 -4
- data/app/controllers/ishapi/my/my_controller.rb-trash +0 -42
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 6e49663b1aa867161c3b7142934d9ff52cebbfd08e144667a89b3bc729266836
         | 
| 4 | 
            +
              data.tar.gz: c648fdda0b0c325fee88d8f3dfd509e950de62bf3e23be287e60c7a45af98d77
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 4a833d2656fb03cd94e40f660f5baa80fc12fdcd65a61fdbc48491b30f8275ae1788993b25abd8b9e009098eaf68aa15eb9b7b893b95b0a12cc96bccabaa3af8
         | 
| 7 | 
            +
              data.tar.gz: d8e8676f306debb28d9c19945c10173c18ddd604623e0d45f9f0d5f52994203d2a5dbd01ad65c494eb84d3c818cce1d7e23bbeed70c900ad249bd63d937d5aea
         | 
| @@ -1,73 +1,73 @@ | |
| 1 | 
            -
            module Ishapi
         | 
| 2 | 
            -
              class ApplicationController < ActionController::Base
         | 
| 3 1 |  | 
| 4 | 
            -
             | 
| 5 | 
            -
                def long_term_token
         | 
| 6 | 
            -
                  accessToken   = request.headers[:accessToken]
         | 
| 7 | 
            -
                  accessToken ||= params[:accessToken]
         | 
| 2 | 
            +
            class Ishapi::ApplicationController < ActionController::Base
         | 
| 8 3 |  | 
| 9 | 
            -
             | 
| 4 | 
            +
              ## POST /api/users/long_term_token , a FB login flow
         | 
| 5 | 
            +
              def long_term_token
         | 
| 6 | 
            +
                accessToken   = request.headers[:accessToken]
         | 
| 7 | 
            +
                accessToken ||= params[:accessToken]
         | 
| 10 8 |  | 
| 11 | 
            -
             | 
| 12 | 
            -
                    "client_id=#{::FB[params['domain']][:app]}&client_secret=#{::FB[params['domain']][:secret]}&" +
         | 
| 13 | 
            -
                    "fb_exchange_token=#{accessToken}"
         | 
| 14 | 
            -
                  j = JSON.parse response.body
         | 
| 15 | 
            -
                  @long_term_token  = j['access_token']
         | 
| 16 | 
            -
                  @graph            = Koala::Facebook::API.new( accessToken )
         | 
| 17 | 
            -
                  @me               = @graph.get_object( 'me', :fields => 'email' )
         | 
| 18 | 
            -
                  @current_user     = User.where( :email => @me['email'] ).first
         | 
| 9 | 
            +
                params['domain'] = 'tgm.piousbox.com'
         | 
| 19 10 |  | 
| 20 | 
            -
             | 
| 21 | 
            -
                   | 
| 11 | 
            +
                response = ::HTTParty.get "https://graph.facebook.com/v5.0/oauth/access_token?grant_type=fb_exchange_token&" +
         | 
| 12 | 
            +
                  "client_id=#{::FB[params['domain']][:app]}&client_secret=#{::FB[params['domain']][:secret]}&" +
         | 
| 13 | 
            +
                  "fb_exchange_token=#{accessToken}"
         | 
| 14 | 
            +
                j = JSON.parse response.body
         | 
| 15 | 
            +
                @long_term_token  = j['access_token']
         | 
| 16 | 
            +
                @graph            = Koala::Facebook::API.new( accessToken )
         | 
| 17 | 
            +
                @me               = @graph.get_object( 'me', :fields => 'email' )
         | 
| 18 | 
            +
                @current_user     = User.where( :email => @me['email'] ).first
         | 
| 22 19 |  | 
| 23 | 
            -
             | 
| 24 | 
            -
             | 
| 25 | 
            -
                    jwt_token: @jwt_token,
         | 
| 26 | 
            -
                    long_term_token: @long_term_token,
         | 
| 27 | 
            -
                    n_unlocks: @current_user.profile.n_unlocks,
         | 
| 28 | 
            -
                  }
         | 
| 29 | 
            -
                end
         | 
| 20 | 
            +
                # send the jwt to client
         | 
| 21 | 
            +
                @jwt_token = encode(user_id: @current_user.id.to_s)
         | 
| 30 22 |  | 
| 31 | 
            -
                 | 
| 23 | 
            +
                render json: {
         | 
| 24 | 
            +
                  email: @current_user.email,
         | 
| 25 | 
            +
                  jwt_token: @jwt_token,
         | 
| 26 | 
            +
                  long_term_token: @long_term_token,
         | 
| 27 | 
            +
                  n_unlocks: @current_user.profile.n_unlocks,
         | 
| 28 | 
            +
                }
         | 
| 29 | 
            +
              end
         | 
| 32 30 |  | 
| 33 | 
            -
             | 
| 34 | 
            -
                  begin
         | 
| 35 | 
            -
                    decoded = decode(params[:jwt_token])
         | 
| 36 | 
            -
                    @current_user = User.find decoded['user_id']
         | 
| 37 | 
            -
                  rescue JWT::ExpiredSignature, JWT::DecodeError => e
         | 
| 38 | 
            -
                    flash[:notice] = 'You arent logged in, or you have been logged out.'
         | 
| 39 | 
            -
                    # @current_user = User.new
         | 
| 40 | 
            -
                  end
         | 
| 41 | 
            -
                end
         | 
| 31 | 
            +
              private
         | 
| 42 32 |  | 
| 43 | 
            -
             | 
| 44 | 
            -
                 | 
| 45 | 
            -
                   | 
| 46 | 
            -
             | 
| 47 | 
            -
             | 
| 48 | 
            -
                   | 
| 49 | 
            -
             | 
| 50 | 
            -
                  rescue JWT::DecodeError
         | 
| 51 | 
            -
                    Rails.logger.info("JWT::DecodeError")
         | 
| 52 | 
            -
                  end
         | 
| 53 | 
            -
                  current_ability
         | 
| 33 | 
            +
              def check_profile
         | 
| 34 | 
            +
                begin
         | 
| 35 | 
            +
                  decoded = decode(params[:jwt_token])
         | 
| 36 | 
            +
                  @current_user = User.find decoded['user_id']
         | 
| 37 | 
            +
                rescue JWT::ExpiredSignature, JWT::DecodeError => e
         | 
| 38 | 
            +
                  flash[:notice] = 'You are not logged in, or you have been logged out.'
         | 
| 39 | 
            +
                  # puts! 'You are not logged in, or you have been logged out.'
         | 
| 54 40 | 
             
                end
         | 
| 41 | 
            +
              end
         | 
| 55 42 |  | 
| 56 | 
            -
             | 
| 57 | 
            -
             | 
| 58 | 
            -
             | 
| 59 | 
            -
                   | 
| 43 | 
            +
              # jwt
         | 
| 44 | 
            +
              def check_jwt
         | 
| 45 | 
            +
                begin
         | 
| 46 | 
            +
                  decoded = decode(params[:jwt_token])
         | 
| 47 | 
            +
                  @current_user = User.find decoded['user_id']
         | 
| 48 | 
            +
                rescue JWT::ExpiredSignature
         | 
| 49 | 
            +
                  Rails.logger.info("JWT::ExpiredSignature")
         | 
| 50 | 
            +
                rescue JWT::DecodeError
         | 
| 51 | 
            +
                  Rails.logger.info("JWT::DecodeError")
         | 
| 60 52 | 
             
                end
         | 
| 53 | 
            +
                current_ability
         | 
| 54 | 
            +
              end
         | 
| 61 55 |  | 
| 62 | 
            -
             | 
| 63 | 
            -
             | 
| 64 | 
            -
             | 
| 65 | 
            -
             | 
| 66 | 
            -
             | 
| 56 | 
            +
              # jwt
         | 
| 57 | 
            +
              def decode(token)
         | 
| 58 | 
            +
                decoded = JWT.decode(token, Rails.application.secrets.secret_key_base.to_s)[0]
         | 
| 59 | 
            +
                HashWithIndifferentAccess.new decoded
         | 
| 60 | 
            +
              end
         | 
| 67 61 |  | 
| 68 | 
            -
             | 
| 69 | 
            -
             | 
| 70 | 
            -
                 | 
| 62 | 
            +
              # jwt
         | 
| 63 | 
            +
              def encode(payload, exp = 48.hours.from_now) # @TODO: definitely change, right now I expire once in 2 days.
         | 
| 64 | 
            +
                payload[:exp] = exp.to_i
         | 
| 65 | 
            +
                JWT.encode(payload, Rails.application.secrets.secret_key_base.to_s)
         | 
| 66 | 
            +
              end
         | 
| 71 67 |  | 
| 68 | 
            +
              def current_ability
         | 
| 69 | 
            +
                @current_ability ||= Ishapi::Ability.new( @current_user )
         | 
| 72 70 | 
             
              end
         | 
| 71 | 
            +
             | 
| 73 72 | 
             
            end
         | 
| 73 | 
            +
             | 
| @@ -1,36 +1,47 @@ | |
| 1 | 
            +
             | 
| 1 2 | 
             
            require_dependency "ishapi/application_controller"
         | 
| 2 | 
            -
            module Ishapi
         | 
| 3 | 
            -
              class MapsController < ApplicationController
         | 
| 4 | 
            -
                before_action :check_profile, only: [ :show ]
         | 
| 5 | 
            -
             | 
| 6 | 
            -
                def show
         | 
| 7 | 
            -
                  @map = ::Gameui::Map.find_by slug: params[:slug]
         | 
| 8 | 
            -
                  @markers = @map.markers.where( is_active: true )
         | 
| 9 | 
            -
                  @newsitems = @map.newsitems
         | 
| 10 | 
            -
             | 
| 11 | 
            -
                  case @map.ordering_type
         | 
| 12 | 
            -
                  when ::Gameui::Map::ORDERING_TYPE_ALPHABETIC
         | 
| 13 | 
            -
                    @markers = @markers.order_by( name: :asc )
         | 
| 14 | 
            -
                  when ::Gameui::Map::ORDERING_TYPE_CUSTOM
         | 
| 15 | 
            -
                    @markers = @markers.order_by( ordering: :asc )
         | 
| 16 | 
            -
                  end
         | 
| 17 | 
            -
             | 
| 18 | 
            -
                  ## @TODO: figure this out eventually
         | 
| 19 | 
            -
                  if city = City.where( cityname: @map.slug ).first
         | 
| 20 | 
            -
                    # @newsitems = city.newsitems
         | 
| 21 | 
            -
                    @galleries = city.galleries
         | 
| 22 | 
            -
                    @reports = city.reports
         | 
| 23 | 
            -
                    @videos = city.videos
         | 
| 24 | 
            -
                  end
         | 
| 25 | 
            -
             | 
| 26 | 
            -
                  authorize! :show, @map
         | 
| 27 | 
            -
                end
         | 
| 28 3 |  | 
| 29 | 
            -
             | 
| 30 | 
            -
             | 
| 31 | 
            -
             | 
| 32 | 
            -
             | 
| 4 | 
            +
            class Ishapi::MapsController < Ishapi::ApplicationController
         | 
| 5 | 
            +
              before_action :check_profile, only: [ :show ]
         | 
| 6 | 
            +
             | 
| 7 | 
            +
              def show
         | 
| 8 | 
            +
                @location = ::Gameui::Map.unscoped.find_by slug: params[:slug]
         | 
| 9 | 
            +
                @map = @location.map || @location
         | 
| 10 | 
            +
                authorize! :show, @map
         | 
| 11 | 
            +
                @newsitems = @location.newsitems
         | 
| 12 | 
            +
             | 
| 13 | 
            +
                ##
         | 
| 14 | 
            +
                ## @TODO: absolutely change this!
         | 
| 15 | 
            +
                ##
         | 
| 16 | 
            +
             | 
| 17 | 
            +
                @markers = @map.markers.where( is_active: true )
         | 
| 18 | 
            +
                if @current_user
         | 
| 19 | 
            +
                  a = @current_user.profile.shared_markers.unscoped.where( is_active: true, map_id: @map.id ).to_a
         | 
| 20 | 
            +
                  @markers = @markers + a
         | 
| 33 21 | 
             
                end
         | 
| 34 22 |  | 
| 23 | 
            +
                # case @map.ordering_type
         | 
| 24 | 
            +
                # when ::Gameui::Map::ORDERING_TYPE_ALPHABETIC
         | 
| 25 | 
            +
                #   @markers = @markers.order_by( name: :asc )
         | 
| 26 | 
            +
                # when ::Gameui::Map::ORDERING_TYPE_CUSTOM
         | 
| 27 | 
            +
                #   @markers = @markers.order_by( ordering: :asc )
         | 
| 28 | 
            +
                # end
         | 
| 29 | 
            +
             | 
| 30 | 
            +
                # ## @TODO: figure this out eventually
         | 
| 31 | 
            +
                # if city = City.where( cityname: @map.slug ).first
         | 
| 32 | 
            +
                #   # @newsitems = city.newsitems
         | 
| 33 | 
            +
                #   @galleries = city.galleries
         | 
| 34 | 
            +
                #   @reports = city.reports
         | 
| 35 | 
            +
                #   @videos = city.videos
         | 
| 36 | 
            +
                # end
         | 
| 37 | 
            +
             | 
| 38 | 
            +
              end
         | 
| 39 | 
            +
             | 
| 40 | 
            +
              def show_marker
         | 
| 41 | 
            +
                @marker = ::Gameui::Marker.find_by slug: params[:slug]
         | 
| 42 | 
            +
                authorize! :show, @marker
         | 
| 43 | 
            +
                render json: @marker
         | 
| 35 44 | 
             
              end
         | 
| 45 | 
            +
             | 
| 36 46 | 
             
            end
         | 
| 47 | 
            +
             | 
| @@ -8,14 +8,9 @@ class Ishapi::Ability | |
| 8 8 | 
             
                #
         | 
| 9 9 | 
             
                unless user.blank?
         | 
| 10 10 |  | 
| 11 | 
            -
                  if user.profile && user.profile.sudoer?
         | 
| 12 | 
            -
             | 
| 13 | 
            -
                  end
         | 
| 14 | 
            -
             | 
| 15 | 
            -
                  can [ :update ], ::CoTailors::Address do |address|
         | 
| 16 | 
            -
                    puts [ user.inspect, address.inspect ], '+++ user in cancancan'
         | 
| 17 | 
            -
                    true
         | 
| 18 | 
            -
                  end
         | 
| 11 | 
            +
                  # if user.profile && user.profile.sudoer?
         | 
| 12 | 
            +
                  #   can :manage, :all
         | 
| 13 | 
            +
                  # end
         | 
| 19 14 |  | 
| 20 15 | 
             
                  can [ :my_index ], Gallery
         | 
| 21 16 | 
             
                  can [ :show ], Gallery do |gallery|
         | 
| @@ -25,7 +20,7 @@ class Ishapi::Ability | |
| 25 20 |  | 
| 26 21 | 
             
                  can [ :create, :unlock ], ::Ish::Payment
         | 
| 27 22 |  | 
| 28 | 
            -
                  can [ :buy_stars ], :: | 
| 23 | 
            +
                  can [ :buy_stars ], ::Ish::UserProfile
         | 
| 29 24 |  | 
| 30 25 | 
             
                end
         | 
| 31 26 | 
             
                #
         | 
| @@ -33,22 +28,12 @@ class Ishapi::Ability | |
| 33 28 | 
             
                #
         | 
| 34 29 | 
             
                user ||= User.new
         | 
| 35 30 |  | 
| 36 | 
            -
                can [ :show ],  | 
| 31 | 
            +
                can [ :show ], Ish::UserProfile
         | 
| 37 32 |  | 
| 38 33 | 
             
                can [ :index, :show ], City
         | 
| 39 34 |  | 
| 40 | 
            -
                can [ :update ], ::CoTailors::Address
         | 
| 41 | 
            -
                can [ :add ], ::CoTailors::OrderItem
         | 
| 42 | 
            -
                can [ :create, :update_measurements ], ::CoTailors::Order
         | 
| 43 | 
            -
                can [ :show ], ::CoTailors::Product
         | 
| 44 | 
            -
             | 
| 45 35 | 
             
                can [ :index, :show ], Event
         | 
| 46 36 |  | 
| 47 | 
            -
                #
         | 
| 48 | 
            -
                # Ish::P
         | 
| 49 | 
            -
                #
         | 
| 50 | 
            -
             | 
| 51 | 
            -
             | 
| 52 37 | 
             
                #
         | 
| 53 38 | 
             
                # G
         | 
| 54 39 | 
             
                #
         | 
| @@ -56,18 +41,39 @@ class Ishapi::Ability | |
| 56 41 | 
             
                can [ :show ], Gallery do |gallery|
         | 
| 57 42 | 
             
                  gallery.is_public && !gallery.is_trash
         | 
| 58 43 | 
             
                end
         | 
| 59 | 
            -
                can [ :index, :show ], ::Gameui::Map
         | 
| 60 | 
            -
                can [ :show ], ::Gameui::Marker
         | 
| 61 44 |  | 
| 45 | 
            +
                #
         | 
| 46 | 
            +
                # I
         | 
| 47 | 
            +
                #
         | 
| 48 | 
            +
                can [ :fb_sign_in, :long_term_token, :open_permission, :welcome_home ], Ishapi
         | 
| 49 | 
            +
             | 
| 50 | 
            +
                #
         | 
| 51 | 
            +
                # M
         | 
| 52 | 
            +
                #
         | 
| 53 | 
            +
                can [ :index ], ::Gameui::Map
         | 
| 54 | 
            +
                can [ :show ], ::Gameui::Map do |map|
         | 
| 55 | 
            +
                  map.is_public || map.shared_profiles.include?( user.profile )
         | 
| 56 | 
            +
                end
         | 
| 57 | 
            +
                can [ :show ], ::Gameui::Marker do |m|
         | 
| 58 | 
            +
                  m.is_public
         | 
| 59 | 
            +
                end
         | 
| 60 | 
            +
             | 
| 61 | 
            +
                #
         | 
| 62 | 
            +
                # R
         | 
| 63 | 
            +
                #
         | 
| 62 64 | 
             
                can [ :index ], Report
         | 
| 63 65 | 
             
                can [ :my_index, :show ], Report do |report|
         | 
| 64 66 | 
             
                  report.is_public
         | 
| 65 67 | 
             
                end
         | 
| 66 68 |  | 
| 67 | 
            -
                 | 
| 68 | 
            -
             | 
| 69 | 
            +
                #
         | 
| 70 | 
            +
                # S
         | 
| 71 | 
            +
                #
         | 
| 69 72 | 
             
                can [ :index, :show ], Site
         | 
| 70 73 |  | 
| 74 | 
            +
                #
         | 
| 75 | 
            +
                # T
         | 
| 76 | 
            +
                #
         | 
| 71 77 | 
             
                can [ :index ], Tag
         | 
| 72 78 | 
             
                can [ :show ], Tag do |tag|
         | 
| 73 79 | 
             
                  tag.is_public
         | 
| @@ -84,5 +90,6 @@ class Ishapi::Ability | |
| 84 90 | 
             
                can [ :show ], Video do |video|
         | 
| 85 91 | 
             
                  video.is_public
         | 
| 86 92 | 
             
                end
         | 
| 93 | 
            +
             | 
| 87 94 | 
             
              end
         | 
| 88 95 | 
             
            end
         | 
| @@ -2,7 +2,11 @@ | |
| 2 2 | 
             
            # ishapi / maps / show
         | 
| 3 3 | 
             
            #
         | 
| 4 4 |  | 
| 5 | 
            -
            this_key = [ | 
| 5 | 
            +
            this_key = [
         | 
| 6 | 
            +
              @map.id, @map.updated_at,
         | 
| 7 | 
            +
              current_user&.profile&.updated_at,
         | 
| 8 | 
            +
              params.permit!
         | 
| 9 | 
            +
            ]
         | 
| 6 10 | 
             
            json.cache! this_key do
         | 
| 7 11 | 
             
              json.map do
         | 
| 8 12 | 
             
                json.id          @map.id.to_s
         | 
| @@ -13,18 +17,25 @@ json.cache! this_key do | |
| 13 17 | 
             
                json.h           @map.h
         | 
| 14 18 | 
             
                json.img_path    @map.image.image.url(:original)
         | 
| 15 19 | 
             
                json.updated_at  @map.updated_at
         | 
| 20 | 
            +
                json.rated       @map.rated
         | 
| 21 | 
            +
             | 
| 22 | 
            +
                if @map.is_premium
         | 
| 23 | 
            +
                  json.premium_tier @map.premium_tier
         | 
| 24 | 
            +
                  json.is_premium   @map.premium_tier > 0
         | 
| 25 | 
            +
                  json.is_purchased current_user&.profile&.has_premium_purchase( @map )
         | 
| 26 | 
            +
                end
         | 
| 16 27 |  | 
| 17 28 | 
             
                if @map.map
         | 
| 18 29 | 
             
                  json.partial! 'ishapi/maps/show', map: @map.map
         | 
| 19 30 | 
             
                  json.config JSON.parse @map.parent.config
         | 
| 20 31 | 
             
                  json.labels JSON.parse @map.parent.labels
         | 
| 21 | 
            -
                  json.partial! 'ishapi/markers/index',  | 
| 32 | 
            +
                  json.partial! 'ishapi/markers/index', markers: @markers
         | 
| 22 33 | 
             
                else
         | 
| 23 34 | 
             
                  ## I removed json parsing from here! _vp_ 2021-10-14
         | 
| 24 35 | 
             
                  ## I added json parsing here! _vo_ 2021-10-19
         | 
| 25 36 | 
             
                  json.config JSON.parse @map.config
         | 
| 26 37 | 
             
                  json.labels JSON.parse @map.labels
         | 
| 27 | 
            -
                  json.partial! 'ishapi/markers/index',  | 
| 38 | 
            +
                  json.partial! 'ishapi/markers/index', markers: @markers
         | 
| 28 39 | 
             
                end
         | 
| 29 40 |  | 
| 30 41 | 
             
                json.breadcrumbs do
         | 
    
        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. | 
| 4 | 
            +
              version: 0.1.8.167
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - piousbox
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date:  | 
| 11 | 
            +
            date: 2022-01-18 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: rails
         | 
| @@ -206,7 +206,6 @@ files: | |
| 206 206 | 
             
            - app/controllers/ishapi/maps_controller.rb
         | 
| 207 207 | 
             
            - app/controllers/ishapi/measurements_controller.rb
         | 
| 208 208 | 
             
            - app/controllers/ishapi/my/galleries_controller.rb
         | 
| 209 | 
            -
            - app/controllers/ishapi/my/my_controller.rb-trash
         | 
| 210 209 | 
             
            - app/controllers/ishapi/my/reports_controller.rb
         | 
| 211 210 | 
             
            - app/controllers/ishapi/my/videos_controller.rb
         | 
| 212 211 | 
             
            - app/controllers/ishapi/newsitems_controller.rb
         | 
| @@ -303,7 +302,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 303 302 | 
             
                - !ruby/object:Gem::Version
         | 
| 304 303 | 
             
                  version: '0'
         | 
| 305 304 | 
             
            requirements: []
         | 
| 306 | 
            -
            rubygems_version: 3. | 
| 305 | 
            +
            rubygems_version: 3.1.6
         | 
| 307 306 | 
             
            signing_key: 
         | 
| 308 307 | 
             
            specification_version: 4
         | 
| 309 308 | 
             
            summary: Summary of Ishapi.
         | 
| @@ -1,42 +0,0 @@ | |
| 1 | 
            -
             | 
| 2 | 
            -
            module Ishapi
         | 
| 3 | 
            -
              module My
         | 
| 4 | 
            -
                class MyController < Ishapi::ApplicationController
         | 
| 5 | 
            -
             | 
| 6 | 
            -
                  before_action :check_profile
         | 
| 7 | 
            -
             | 
| 8 | 
            -
                  # @TODO: move to users_controller
         | 
| 9 | 
            -
                  def account
         | 
| 10 | 
            -
                    @profile = current_user&.profile
         | 
| 11 | 
            -
                    authorize! :show, @profile
         | 
| 12 | 
            -
                    render 'ishapi/users/account'
         | 
| 13 | 
            -
                  rescue CanCan::AccessDenied
         | 
| 14 | 
            -
                    render json: {
         | 
| 15 | 
            -
                      status: :not_ok,
         | 
| 16 | 
            -
                    }, status: 401
         | 
| 17 | 
            -
                  end
         | 
| 18 | 
            -
             | 
| 19 | 
            -
            =begin
         | 
| 20 | 
            -
                  private
         | 
| 21 | 
            -
             | 
| 22 | 
            -
                  def do_login
         | 
| 23 | 
            -
                    token = decode(params[:jwtToken])
         | 
| 24 | 
            -
                    @current_user = User.find(token["user_id"])
         | 
| 25 | 
            -
                  end
         | 
| 26 | 
            -
             | 
| 27 | 
            -
                  def set_profile
         | 
| 28 | 
            -
                    begin
         | 
| 29 | 
            -
                      @graph   = Koala::Facebook::API.new( params[:accessToken] )
         | 
| 30 | 
            -
                      me       = @graph.get_object( 'me', :fields => 'email' )
         | 
| 31 | 
            -
                      @profile = IshModels::UserProfile.find_by :email => me['email']
         | 
| 32 | 
            -
                    rescue Koala::Facebook::AuthenticationError => e
         | 
| 33 | 
            -
                      render :json => { :status => :not_ok, :errors => "Probably expired token." }
         | 
| 34 | 
            -
                      return
         | 
| 35 | 
            -
                    end
         | 
| 36 | 
            -
                  end
         | 
| 37 | 
            -
            =end
         | 
| 38 | 
            -
             | 
| 39 | 
            -
                end
         | 
| 40 | 
            -
              end
         | 
| 41 | 
            -
            end
         | 
| 42 | 
            -
             |