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.

Parameters:

  • model (ActiveFedora::Base, #member_ids)
  • current_ability (Ability)

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

.build_permitted_paramsObject

Since:

  • 0.14.0



59
60
61
# File 'app/forms/curation_concerns/forms/work_form.rb', line 59

def build_permitted_params
  super + [:version]
end

.multiple?(term) ⇒ Boolean

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

Returns:

  • (Boolean)

Since:

  • 0.14.0



48
49
50
51
52
53
54
55
56
57
# File 'app/forms/curation_concerns/forms/work_form.rb', line 48

def multiple?(term)
  case term.to_s
  when 'ordered_member_ids'
    true
  when 'in_works_ids'
    true
  else
    super
  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



35
36
37
# File 'app/forms/curation_concerns/forms/work_form.rb', line 35

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

Returns:

  • (Hash)

    All file sets in the collection, file.to_s is the key, file.id is the value

Since:

  • 0.14.0



41
42
43
# File 'app/forms/curation_concerns/forms/work_form.rb', line 41

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

#versionObject

Since:

  • 0.14.0



29
30
31
# File 'app/forms/curation_concerns/forms/work_form.rb', line 29

def version
  model.etag
end