Sha256: 279b5859e8d9a6de3727b3000541e66021be55a8fed7d81d64e57f31f768980d

Contents?: true

Size: 1.41 KB

Versions: 76

Compression:

Stored size: 1.41 KB

Contents

module CoalescingPanda
  class Course < ActiveRecord::Base
    belongs_to :account, foreign_key: :coalescing_panda_lti_account_id, class_name: 'CoalescingPanda::LtiAccount'
    belongs_to :term, foreign_key: :coalescing_panda_term_id, class_name: 'CoalescingPanda::Term'
    has_many :sections, foreign_key: :coalescing_panda_course_id, class_name: 'CoalescingPanda::Section', dependent: :destroy
    has_many :enrollments, through: :sections, dependent: :destroy
    has_many :assignments, foreign_key: :coalescing_panda_course_id, class_name: 'CoalescingPanda::Assignment', dependent: :destroy
    has_many :submissions, through: :assignments, dependent: :destroy
    has_many :users, through: :sections, source: :users, class_name: 'CoalescingPanda::User'
    has_many :groups, :as => :context, class_name: 'CoalescingPanda::Group', dependent: :destroy
    has_many :group_categories, :as => :context, class_name: 'CoalescingPanda::GroupCategory', dependent: :destroy
    has_many :group_memberships, through: :groups, source: :group_memberships, class_name: 'CoalescingPanda::GroupMembership', dependent: :destroy
    has_many :canvas_batches, as: :context, dependent: :destroy
    has_many :assignment_groups, foreign_key: :coalescing_panda_course_id, class_name: 'CoalescingPanda::AssignmentGroup', dependent: :destroy

    validates :coalescing_panda_lti_account_id, presence: true
    validates :canvas_course_id, presence: true
  end
end

Version data entries

76 entries across 76 versions & 1 rubygems

Version Path
coalescing_panda-5.3.0 app/models/coalescing_panda/course.rb
coalescing_panda-5.2.2 app/models/coalescing_panda/course.rb
coalescing_panda-5.2.2.beta1 app/models/coalescing_panda/course.rb
coalescing_panda-5.2.1 app/models/coalescing_panda/course.rb
coalescing_panda-5.2.0 app/models/coalescing_panda/course.rb
coalescing_panda-5.2.0.beta2 app/models/coalescing_panda/course.rb
coalescing_panda-5.2.0.beta1 app/models/coalescing_panda/course.rb
coalescing_panda-5.1.13 app/models/coalescing_panda/course.rb
coalescing_panda-5.1.12 app/models/coalescing_panda/course.rb
coalescing_panda-5.1.11 app/models/coalescing_panda/course.rb
coalescing_panda-5.1.10 app/models/coalescing_panda/course.rb
coalescing_panda-5.1.9 app/models/coalescing_panda/course.rb
coalescing_panda-5.1.8 app/models/coalescing_panda/course.rb
coalescing_panda-5.1.7 app/models/coalescing_panda/course.rb
coalescing_panda-5.1.6 app/models/coalescing_panda/course.rb
coalescing_panda-5.1.5 app/models/coalescing_panda/course.rb
coalescing_panda-5.1.4 app/models/coalescing_panda/course.rb
coalescing_panda-5.1.3.beta.2 app/models/coalescing_panda/course.rb
coalescing_panda-5.1.3.beta.1 app/models/coalescing_panda/course.rb
coalescing_panda-5.1.3 app/models/coalescing_panda/course.rb