Skip to content

Instantly share code, notes, and snippets.

@EminenceHC
Created October 17, 2013 21:35
Show Gist options
  • Save EminenceHC/7032605 to your computer and use it in GitHub Desktop.
Save EminenceHC/7032605 to your computer and use it in GitHub Desktop.
Refactoring Controller
class DrugAssessmentsController < ApplicationController
before_filter :authenticate_user!
def create
@form = DrugAssessment.create(drug_assessment_params)
@query_string = drug_assessment_params[:student_id]
if
current.loginable_type == 'Student'
redirect_to drug_assessments_path
elsif
current.loginable_type == 'Counselor'
redirect_to drug_assessments_path(:student_id => @query_string)
else
redirect_to drug_assessments_path
end
end
def new
@year = Date.today.cwyear
@cweek = Date.today.cweek
@date = Date.commercial(@year, @cweek)
@string = @date.strftime("%Y/%m/%d")
@form = DrugAssessment.new(cweek: (params[:cweek] || @cweek))
if
current.loginable_type == 'Student'
@form.student_id = current.loginable.id
elsif
current.loginable_type == 'Counselor'
@form.student_id = params[:sid]
else
@form.student_id = params[:sid]
end
end
def index
@users = User.all
@users_array = User.where(loginable_type: 'Student').includes(:loginable).all.map { |u| [u.full_name, u.loginable.id] }
if current.loginable_type == 'Student'
@sid = current.loginable.id
elsif current.loginable_type == 'Counselor'
if
params[:student_id].present?
@sid = params[:student_id]
else
@sid = 0
end
end
@l = DrugAssessment.order('cweek DESC').where(student_id: @sid).search(params[:l])
@form = @l.result
@test = Array.new
@form.each do |r|
unless r.cweek.nil? or r.cweek == 0
@test.push(r.cweek)
end
end
@test = @test.uniq
@year = Date.today.cwyear
@current_cweek = Date.today.cweek
@start_cweek = 34
@emptycount = 0
while @current_cweek > @start_cweek do
if @test.include?(@current_cweek)
else
charles = DrugAssessment.new(cweek: @current_cweek)
@form << charles
@emptycount = @emptycount + 1
end
@current_cweek = @current_cweek - 1
end
@form = @form.sort_by{|a| -(a.cweek)}
#else
# @l = DrugAssessment.search(params[:l])
# @form = @l.result
#end
end
def show
@student = DrugAssessment.find(params[:id])
end
def edit
@form = DrugAssessment.find(params[:id])
end
def update
@da = DrugAssessment.find(params[:id])
@sid = @da.student_id
@da.update(drug_assessment_params)
redirect_to drug_assessments_path(:student_id => @sid )
end
end
private
def drug_assessment_params
params.require(:drug_assessment).permit(:id, :student_id, :drug_assessment, :week, :cweek, :alcohol, :marijuana, :over_the_counter, :inhalent, :ecstacy, :crack_cocaine, :heroin, :methanphetamine, :pcp_lsd_hallucinogen, :prescripton, :methadone, :trigger, :plan, :usage)
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment