archive_exam/app/controllers/archive_exams_controller.rb

85 lines
2.7 KiB
Ruby

class ArchiveExamsController < ApplicationController
def index
categories = OrbitHelper.page_categories
@categories = []
if categories.first == "all"
module_app = OrbitHelper.this_module_app
@categories = module_app.categories
else
categories.each do |cat|
@categories << Category.find(cat)
end
end
archive_exam_test_types = ArchiveExamTestType.all
archive_exam_grades = ArchiveExamGrade.all
archive_exam_colleges = ArchiveExamCollege.all
archive_exam_departments = ArchiveExamDepartment.all
archive_exam_subjects = ArchiveExamSubject.all
{
'categories' => @categories,
'archive_exam_test_types' => archive_exam_test_types,
'archive_exam_grades' => archive_exam_grades,
'archive_exam_colleges' => archive_exam_colleges,
'archive_exam_departments' => archive_exam_departments,
'archive_exam_subjects' => archive_exam_subjects
}
end
def result
params = OrbitHelper.params
cagetoey = Category.find(params[:category]).title rescue ""
archive_exam_files = ArchiveExamFile.where(:category_id => params[:category], :is_hidden=> false).desc(:year)
if !params[:test_type].blank?
archive_exam_files = archive_exam_files.where(:archive_exam_test_type_id => params[:test_type])
test_type = ' * 考試類型: ' + ArchiveExamTestType.find(params[:test_type]).title rescue ""
end
if !params[:grade].blank?
archive_exam_files = archive_exam_files.where(:archive_exam_grade_id => params[:grade])
grade = ' * 年級: ' + ArchiveExamGrade.find(params[:grade]).title rescue ""
end
if !params[:year].blank?
archive_exam_files = archive_exam_files.where(:year => params[:year])
year = ' * 年度: ' + params[:year] rescue ""
end
if !params[:college].blank?
archive_exam_files = archive_exam_files.where(:archive_exam_college_id => params[:college])
college = ' * 學院: ' + ArchiveExamCollege.find(params[:college]).title rescue ""
end
if !params[:department].blank?
archive_exam_files = archive_exam_files.where(:archive_exam_department_id => params[:department])
department = ' * 系所: ' + ArchiveExamDepartment.find(params[:department]).title rescue ""
end
if !params[:subject].blank?
archive_exam_files = archive_exam_files.where(:archive_exam_subject_id => params[:subject])
subject = ' * 科目: ' + ArchiveExamSubject.find(params[:subject]).title rescue ""
end
archive_exam_files = archive_exam_files.where(:archive_exam_subject_id => params[:subject]) if !params[:subject].blank?
{
'cagetoey' => cagetoey,
'archive_exam_files' => archive_exam_files,
'test_type' => test_type,
'grade' => grade,
'year' => year,
'college' => college,
'department' => department,
'subject' => subject
}
end
end