Sha256: 08cab6428e3dad3678f7395a05e4cbadddf9b40747287a091b497284836ba9ec

Contents?: true

Size: 783 Bytes

Versions: 6

Compression:

Stored size: 783 Bytes

Contents

module Gaku
  class ClassGroups::SemesterClassGroupsController < GakuController

    load_and_authorize_resource :class_group, class: ClassGroup

    respond_to :js, :html

    inherit_resources

    belongs_to :class_group, parent_class: ClassGroup

    before_filter :count, only: %I(create destroy)
    before_filter :load_data, only: %I(new edit)

    protected

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

    private

    def attributes
      %i(semester_id)
    end

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

    def count
      class_group = ClassGroup.find(params[:class_group_id])
      @count = class_group.semesters.count
    end

  end
end

Version data entries

6 entries across 6 versions & 2 rubygems

Version Path
gaku_core-0.0.3 app/controllers/gaku/class_groups/semester_class_groups_controller.rb
gaku-0.0.3 core/app/controllers/gaku/class_groups/semester_class_groups_controller.rb
gaku-0.0.2 core/app/controllers/gaku/class_groups/semester_class_groups_controller.rb
gaku_core-0.0.2 app/controllers/gaku/class_groups/semester_class_groups_controller.rb
gaku-0.0.1 core/app/controllers/gaku/class_groups/semester_class_groups_controller.rb
gaku_core-0.0.1 app/controllers/gaku/class_groups/semester_class_groups_controller.rb