Class: Effective::CommitteeFolder

Inherits:
ActiveRecord::Base
  • Object
show all
Defined in:
app/models/effective/committee_folder.rb

Instance Method Summary collapse

Instance Method Details

#agenda_section?Boolean

Returns:

  • (Boolean)


103
104
105
# File 'app/models/effective/committee_folder.rb', line 103

def agenda_section?
  committee_folder&.meeting?
end

#bulk_upload!Object



90
91
92
93
# File 'app/models/effective/committee_folder.rb', line 90

def bulk_upload!
  files.each { |file| committee_files.create(file: file.blob) }
  true
end

#childrenObject



123
124
125
# File 'app/models/effective/committee_folder.rb', line 123

def children
  committee_folders.flat_map { |folder| [folder] + folder.children }
end

#meeting?Boolean

Returns:

  • (Boolean)


99
100
101
# File 'app/models/effective/committee_folder.rb', line 99

def meeting?
  meeting_date.present?
end

#parentObject



107
108
109
# File 'app/models/effective/committee_folder.rb', line 107

def parent
  committee_folder || committee
end

#parentsObject



111
112
113
114
115
116
117
118
119
120
121
# File 'app/models/effective/committee_folder.rb', line 111

def parents
  folder = self
  parents = []

  while folder.committee_folder.present?
    parents << folder.committee_folder
    folder = folder.committee_folder
  end

  parents.reverse
end

#to_sObject



86
87
88
# File 'app/models/effective/committee_folder.rb', line 86

def to_s
  (parents + [self]).map { |folder| (folder.title || 'folder') }.join(' / ')
end

#top_level?Boolean

Returns:

  • (Boolean)


95
96
97
# File 'app/models/effective/committee_folder.rb', line 95

def top_level?
  committee_folder.blank?
end