Sha256: 508121a7f6814b7836783d78e1a0a78f34fc1411b1d522086ce00ee353eaba91

Contents?: true

Size: 834 Bytes

Versions: 6

Compression:

Stored size: 834 Bytes

Contents

module Gaku
  class Courses::SemesterCoursesController < GakuController

    load_and_authorize_resource :course, class: Gaku::Course
    # load_and_authorize_resource :semester, through: :class_group, class: Gaku::Semester

    inherit_resources
    respond_to :js, :html
    belongs_to :course, parent_class: Gaku::Course

    before_filter :count, only: [:create, :destroy]
    before_filter :load_data

    protected

    def resource_params
      return [] if request.get?
      [params.require(:semester_course).permit(semester_course_attr)]
    end

    private

    def semester_course_attr
      %i(semester_id)
    end

    def count
      course = Course.find(params[:course_id])
      @count = course.semesters.count
    end

    def load_data
      @semesters = Semester.all.map { |s| [s.to_s, s.id] }
    end

  end
end

Version data entries

6 entries across 6 versions & 2 rubygems

Version Path
gaku_core-0.0.3 app/controllers/gaku/courses/semester_courses_controller.rb
gaku-0.0.3 core/app/controllers/gaku/courses/semester_courses_controller.rb
gaku-0.0.2 core/app/controllers/gaku/courses/semester_courses_controller.rb
gaku_core-0.0.2 app/controllers/gaku/courses/semester_courses_controller.rb
gaku-0.0.1 core/app/controllers/gaku/courses/semester_courses_controller.rb
gaku_core-0.0.1 app/controllers/gaku/courses/semester_courses_controller.rb