Sha256: bc61bb9c7f93710fd7093887eb68fef654ecaed2c9324852993e5311fc332e3c

Contents?: true

Size: 713 Bytes

Versions: 15

Compression:

Stored size: 713 Bytes

Contents

export class RequiredFields {
  // Monitors the form and runs the callback if any of the required fields change
  constructor(form, callback) {
    this.form = form
    this.callback = callback
    this.reload()
  }

  get areComplete() {
    return this.requiredFields.filter((n, elem) => { return this.isValuePresent(elem) } ).length === 0
  }

  isValuePresent(elem) {
    return ($(elem).val() === null) || ($(elem).val().length < 1)
  }

  // Reassign requiredFields because fields may have been added or removed.
  reload() {
    // ":input" matches all input, select or textarea fields.
    this.requiredFields = this.form.find(':input[required]')
    this.requiredFields.on('change', this.callback)
  }
}

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
hyrax-5.1.0.pre.beta1 app/assets/javascripts/hyrax/save_work/required_fields.es6
hyrax-5.0.4 app/assets/javascripts/hyrax/save_work/required_fields.es6
hyrax-5.0.3 app/assets/javascripts/hyrax/save_work/required_fields.es6
hyrax-5.0.2 app/assets/javascripts/hyrax/save_work/required_fields.es6
hyrax-5.0.1 app/assets/javascripts/hyrax/save_work/required_fields.es6
hyrax-5.0.0 app/assets/javascripts/hyrax/save_work/required_fields.es6
hyrax-5.0.0.rc3 app/assets/javascripts/hyrax/save_work/required_fields.es6
hyrax-5.0.0.rc2 app/assets/javascripts/hyrax/save_work/required_fields.es6
hyrax-5.0.0.rc1 app/assets/javascripts/hyrax/save_work/required_fields.es6
hyrax-4.0.0 app/assets/javascripts/hyrax/save_work/required_fields.es6
hyrax-4.0.0.rc3 app/assets/javascripts/hyrax/save_work/required_fields.es6
hyrax-4.0.0.rc2 app/assets/javascripts/hyrax/save_work/required_fields.es6
hyrax-4.0.0.rc1 app/assets/javascripts/hyrax/save_work/required_fields.es6
hyrax-4.0.0.beta2 app/assets/javascripts/hyrax/save_work/required_fields.es6
hyrax-4.0.0.beta1 app/assets/javascripts/hyrax/save_work/required_fields.es6