Sha256: 98d848a5c08c167bfdf124f484bf6f7f8a13ceb20e5ba1237660291b48e55d4b

Contents?: true

Size: 1.14 KB

Versions: 11

Compression:

Stored size: 1.14 KB

Contents

export class DepositAgreement {
  // Monitors the form and runs the callback if any files are added
  constructor(form, callback) {
    this.agreementCheckbox = form.find('input#agreement')

    // If true, require the accept checkbox to be checked.
    // Tracks whether the user needs to accept again to the depositor
    // agreement. Once the user has manually agreed once she does not
    // need to agree again regardless on how many files are being added.
    this.isActiveAgreement = this.agreementCheckbox.size() > 0
    if (this.isActiveAgreement) {
      this.setupActiveAgreement(callback)
      this.mustAgreeAgain = this.isAccepted
    }
    else {
      this.mustAgreeAgain = false
    }
  }

  setupActiveAgreement(callback) {
    this.agreementCheckbox.on('change', callback)
  }

  setNotAccepted() {
    this.agreementCheckbox.prop("checked", false)
    this.mustAgreeAgain = false
  }

  setAccepted() {
    this.agreementCheckbox.prop("checked", true)
  }

  /**
   * return true if it's a passive agreement or if the checkbox has been checked
   */
  get isAccepted() {
    return !this.isActiveAgreement || this.agreementCheckbox[0].checked
  }
}

Version data entries

11 entries across 11 versions & 2 rubygems

Version Path
sufia-7.4.1 app/assets/javascripts/sufia/save_work/deposit_agreement.es6
sufia-7.4.0 app/assets/javascripts/sufia/save_work/deposit_agreement.es6
sufia-7.3.1 app/assets/javascripts/sufia/save_work/deposit_agreement.es6
sufia-7.3.0 app/assets/javascripts/sufia/save_work/deposit_agreement.es6
sufia-7.3.0.rc3 app/assets/javascripts/sufia/save_work/deposit_agreement.es6
sufia-7.3.0.rc2 app/assets/javascripts/sufia/save_work/deposit_agreement.es6
sufia-7.3.0.rc1 app/assets/javascripts/sufia/save_work/deposit_agreement.es6
test_hyrax-0.0.1.alpha app/assets/javascripts/hyrax/save_work/deposit_agreement.es6
sufia-7.2.0 app/assets/javascripts/sufia/save_work/deposit_agreement.es6
sufia-7.1.0 app/assets/javascripts/sufia/save_work/deposit_agreement.es6
sufia-7.0.0 app/assets/javascripts/sufia/save_work/deposit_agreement.es6