Module: SurveyMetamodel::Table::ClassModule

Defined in:
lib/generators/survey/metamodels/view.rb

Instance Method Summary collapse

Instance Method Details

#choicesObject



343
344
345
# File 'lib/generators/survey/metamodels/view.rb', line 343

def choices
  model_element.real_choices if !model_element.nil?
end

#columnsObject



339
340
341
# File 'lib/generators/survey/metamodels/view.rb', line 339

def columns
  model_element.real_columns if !model_element.nil?
end

#has_images?Boolean

Returns:

  • (Boolean)


347
348
349
# File 'lib/generators/survey/metamodels/view.rb', line 347

def has_images?
  return (images.any? or !images_s.blank?)
end

#params_sObject



363
364
365
366
367
368
369
370
371
372
# File 'lib/generators/survey/metamodels/view.rb', line 363

def params_s
  cells_string_a = Array.new
  rows.each do |row|
    cells_string_a << "params[:#{name}_#{row.name}]"
    columns.each do |column|
      cells_string_a << "params[:#{name}_#{row.name}_#{column.name}]"
    end
  end
  return "[#{cells_string_a.join(', ')}].uniq.reject(&:blank?).join(', ')"
end

#real_imagesObject



351
352
353
354
355
356
357
358
359
360
361
# File 'lib/generators/survey/metamodels/view.rb', line 351

def real_images
  imgs = nil
  if !images_s.blank? and images.empty?
    imgs = Array.new
    images_s.split(",").each { |image_s| imgs << Image.new(:source => image_s.strip) }
  else
    imgs = images
  end
  raise "The number of images cannot be more than the number of cells." if imgs.count > (rows.count * columns.count)
  return imgs
end

#rowsObject



335
336
337
# File 'lib/generators/survey/metamodels/view.rb', line 335

def rows
  model_element.real_rows if !model_element.nil?
end

#typeObject



331
332
333
# File 'lib/generators/survey/metamodels/view.rb', line 331

def type
  model_element.type if !model_element.nil?
end