48 lines
1.7 KiB
Ruby
48 lines
1.7 KiB
Ruby
class UserController < Users::ApplicationController
|
|
before_action :allow_all_origins
|
|
layout 'user/foundation'
|
|
|
|
def index
|
|
handle_message_params
|
|
end
|
|
|
|
def feedback
|
|
user_feedback = UserFeedback.create(user_id: current_user.id, content: params[:feedback].to_s)
|
|
Notifier.user_feedback(user_feedback.id).deliver_later
|
|
render json: {}
|
|
end
|
|
|
|
def obtain_token
|
|
#user = User.find_by_email('bterkuile@gmail.com')
|
|
#sign_in user
|
|
#render layout: 'user/obtain_token'
|
|
##render json: json_response(ok: true, auth_token: user.authentication_token, user_id: user.id)
|
|
#return
|
|
if current_user.blank?
|
|
case params[:provider]
|
|
when 'instagram' then redirect_to user_instagram_omniauth_authorize_path
|
|
else redirect_to user_facebook_omniauth_authorize_path
|
|
end
|
|
return
|
|
end
|
|
#redirect_to user_omniauth_authorize_path(params[:provider].presence || 'facebook') and return unless current_user.present?
|
|
respond_to do |format|
|
|
format.html { render layout: 'user/obtain_token' }
|
|
format.json do
|
|
render json: json_response(ok: false, status: 401) and return unless params[:user].present? && params[:user][:email].present? && params[:user][:password].present?
|
|
user = User.find_by_email(params[:user][:email])
|
|
render json: json_response(ok: false, status: 401) and return unless user
|
|
render json: json_response(ok: false, status: 401) and return unless user.valid_password?(params[:user][:password])
|
|
user.ensure_authentication_token
|
|
sign_in user
|
|
render json: json_response(ok: true, auth_token: user.authentication_token, user_id: user.id)
|
|
end
|
|
|
|
end
|
|
end
|
|
|
|
def login
|
|
end
|
|
|
|
end
|