From c296fda013a2c8d8b1dbefdad657548d7bba0012 Mon Sep 17 00:00:00 2001 From: pat-son Date: Fri, 24 Feb 2017 14:11:39 -0500 Subject: [PATCH 1/2] Optimized fetching of dsets --- app/controllers/visualizations_controller.rb | 21 +++++++------------- 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/app/controllers/visualizations_controller.rb b/app/controllers/visualizations_controller.rb index d8a59aa4c..2f7533ec4 100644 --- a/app/controllers/visualizations_controller.rb +++ b/app/controllers/visualizations_controller.rb @@ -250,21 +250,14 @@ def displayVis # build list of datasets if !params[:datasets].nil? dsets = params[:datasets].split(',') - dsets.each do |id| - begin - dset = DataSet.find_by_id(id) - if dset.project_id == @project.id - @datasets.push dset - else - fail 'data set does not belong to project' - end - rescue - respond_to do |format| - format.html { redirect_to '/404.html' } - format.json { render json: { errors: ['File not found.'] }, status: 404 } - end - return + @datasets = DataSet.where(:id => dsets, :project_id => @project.id) + + if @datasets.length == 0 + respond_to do |format| + format.html { redirect_to '/404.html' } + format.json { render json: { errors: ['File not found.'] }, status: 404 } end + return end else @datasets = DataSet.includes(:user, :media_objects).where(project_id: params[:id]) From 0329ea86e747f9cea2d9a6cb669602a21b7aa95f Mon Sep 17 00:00:00 2001 From: pat-son Date: Fri, 24 Feb 2017 14:22:20 -0500 Subject: [PATCH 2/2] rubocop --- app/controllers/visualizations_controller.rb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/controllers/visualizations_controller.rb b/app/controllers/visualizations_controller.rb index 2f7533ec4..492f9e0c1 100644 --- a/app/controllers/visualizations_controller.rb +++ b/app/controllers/visualizations_controller.rb @@ -250,11 +250,11 @@ def displayVis # build list of datasets if !params[:datasets].nil? dsets = params[:datasets].split(',') - @datasets = DataSet.where(:id => dsets, :project_id => @project.id) - + @datasets = DataSet.where(id: dsets, project_id: @project.id) + if @datasets.length == 0 - respond_to do |format| - format.html { redirect_to '/404.html' } + respond_to do |format| + format.html { redirect_to '/404.html' } format.json { render json: { errors: ['File not found.'] }, status: 404 } end return