Implement filters on profiles

This commit is contained in:
Justin Edmund 2022-03-01 02:19:44 -08:00
parent 96adcc9540
commit d5ed98f0cf
2 changed files with 20 additions and 9 deletions

View file

@ -35,6 +35,9 @@ class Api::V1::PartiesController < Api::V1::ApiController
def favorites def favorites
raise Api::V1::UnauthorizedError unless current_user raise Api::V1::UnauthorizedError unless current_user
now = DateTime.current
start_time = (now - params['recency'].to_i.seconds).to_datetime.beginning_of_day unless request.params['recency'].blank?
conditions = {} conditions = {}
conditions[:element] = request.params['element'] unless request.params['element'].blank? conditions[:element] = request.params['element'] unless request.params['element'].blank?

View file

@ -25,7 +25,22 @@ class Api::V1::UsersController < Api::V1::ApiController
end end
def show def show
@parties = @user.parties if @user
now = DateTime.current
start_time = (now - params['recency'].to_i.seconds).to_datetime.beginning_of_day unless request.params['recency'].blank?
conditions = {}
conditions[:element] = request.params['element'] unless request.params['element'].blank?
conditions[:raid] = request.params['raid'] unless request.params['raid'].blank?
conditions[:created_at] = start_time..now unless request.params['recency'].blank?
conditions[:user_id] = @user.id
@parties = Party.where(conditions).each { |party|
party.favorited = (current_user) ? party.is_favorited(current_user) : false
}
else
render_not_found_response
end
end end
def check_email def check_email
@ -48,14 +63,6 @@ class Api::V1::UsersController < Api::V1::ApiController
render :available render :available
end end
def show
if @user
@parties = @user.parties
else
render_not_found_response
end
end
def update def update
end end
@ -66,6 +73,7 @@ class Api::V1::UsersController < Api::V1::ApiController
# Specify whitelisted properties that can be modified. # Specify whitelisted properties that can be modified.
def set def set
ap "SETTING!!!"
@user = User.where("username = ?", params[:id]).first @user = User.where("username = ?", params[:id]).first
end end