Refactor api/v1/reports controller (#3469)
This commit is contained in:
		
							parent
							
								
									7f55430652
								
							
						
					
					
						commit
						7c6e02aaf3
					
				| @ -8,22 +8,32 @@ class Api::V1::ReportsController < ApiController | |||||||
|   respond_to :json |   respond_to :json | ||||||
| 
 | 
 | ||||||
|   def index |   def index | ||||||
|     @reports = Report.where(account: current_account) |     @reports = current_account.reports | ||||||
|   end |   end | ||||||
| 
 | 
 | ||||||
|   def create |   def create | ||||||
|     status_ids = report_params[:status_ids].is_a?(Enumerable) ? report_params[:status_ids] : [report_params[:status_ids]] |     @report = current_account.reports.create!( | ||||||
| 
 |       target_account: reported_account, | ||||||
|     @report = Report.create!(account: current_account, |       status_ids: reported_status_ids, | ||||||
|                              target_account: Account.find(report_params[:account_id]), |       comment: report_params[:comment] | ||||||
|                              status_ids: Status.find(status_ids).pluck(:id), |     ) | ||||||
|                              comment: report_params[:comment]) |  | ||||||
| 
 |  | ||||||
|     render :show |     render :show | ||||||
|   end |   end | ||||||
| 
 | 
 | ||||||
|   private |   private | ||||||
| 
 | 
 | ||||||
|  |   def reported_status_ids | ||||||
|  |     Status.find(status_ids).pluck(:id) | ||||||
|  |   end | ||||||
|  | 
 | ||||||
|  |   def status_ids | ||||||
|  |     Array(report_params[:status_ids]) | ||||||
|  |   end | ||||||
|  | 
 | ||||||
|  |   def reported_account | ||||||
|  |     Account.find(report_params[:account_id]) | ||||||
|  |   end | ||||||
|  | 
 | ||||||
|   def report_params |   def report_params | ||||||
|     params.permit(:account_id, :comment, status_ids: []) |     params.permit(:account_id, :comment, status_ids: []) | ||||||
|   end |   end | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user