Class: CurationConcerns::Forms::WorkForm

Inherits:
Object
  • Object
show all
Includes:
HydraEditor::Form
Defined in:
app/forms/curation_concerns/forms/work_form.rb

Overview

Since:

  • 0.14.0

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(model, current_ability) ⇒ WorkForm

Returns a new instance of WorkForm.

Since:

  • 0.14.0



24
25
26
27
# File 'app/forms/curation_concerns/forms/work_form.rb', line 24

def initialize(model, current_ability)
  @current_ability = current_ability
  super(model)
end

Instance Attribute Details

#current_abilityObject

Since:

  • 0.14.0



5
6
7
# File 'app/forms/curation_concerns/forms/work_form.rb', line 5

def current_ability
  @current_ability
end

Class Method Details

.multiple?(term) ⇒ Boolean

This determines whether the allowed parameters are single or multiple. By default it delegates to the model.

Since:

  • 0.14.0



44
45
46
47
48
49
50
51
52
53
# File 'app/forms/curation_concerns/forms/work_form.rb', line 44

def multiple?(term)
  case term.to_s
  when 'ordered_member_ids'
    true
  when 'in_works_ids'
    true
  else
    super
  end
end

.sanitize_params(form_params) ⇒ Object

Overriden to cast ‘rights’ to an array

Since:

  • 0.14.0



56
57
58
59
60
# File 'app/forms/curation_concerns/forms/work_form.rb', line 56

def sanitize_params(form_params)
  super.tap do |params|
    params['rights'] = Array.wrap(params['rights']) if params.key?('rights')
  end
end

Instance Method Details

#initialize_field(key) ⇒ Object

The value for embargo_relase_date and lease_expiration_date should not be initialized to empty string

Since:

  • 0.14.0



31
32
33
# File 'app/forms/curation_concerns/forms/work_form.rb', line 31

def initialize_field(key)
  super unless [:embargo_release_date, :lease_expiration_date].include?(key)
end

#select_filesHash

The possible values for the representative_id dropdown

Since:

  • 0.14.0



37
38
39
# File 'app/forms/curation_concerns/forms/work_form.rb', line 37

def select_files
  Hash[file_presenters.map { |file| [file.to_s, file.id] }]
end