_recordFullDurationOfVideo() {
    if (isNaN(this._trackingFullVideoDuration)) {
      
      // Request and store the full video duration
      this.getDuration().then(function(duration) {
        if (!isNaN(duration)) {
          this._trackingFullVideoDuration = duration;
        }
      }.bind(this));
    } else {

      // Unbind once the duration has been recorded
      this.off('play', this._playerHandlers.recordFullDurationOfVideo);

      // Unbind once the duration has been recorded
      this.off('position', this._playerHandlers.recordFullDurationOfVideo);
    }
  }
/**
   * Requests the full video duration from the API and stores the value for
   * later reference
   *
   * @private
   */
Requests the full video duration from the API and stores the value for
later reference

@private
Requests the full video duration from the API and stores the value for later reference @private
_recordFullDurationOfVideo() {
    if (isNaN(this._trackingFullVideoDuration)) {
      this.getDuration().then(function(duration) {
        if (!isNaN(duration)) {
          this._trackingFullVideoDuration = duration;
        }
      }.bind(this));
    } else {
      this.off('play', this._playerHandlers.recordFullDurationOfVideo);
      this.off('position', this._playerHandlers.recordFullDurationOfVideo);
    }
  }
_recordFullDurationOfVideo ( ) { if ( isNaN ( this . _trackingFullVideoDuration ) ) { this . getDuration ( ) . then ( function ( duration ) { if ( ! isNaN ( duration ) ) { this . _trackingFullVideoDuration = duration ; } } . bind ( this ) ) ; } else { this . off ( 'play' , this . _playerHandlers . recordFullDurationOfVideo ) ; this . off ( 'position' , this . _playerHandlers . recordFullDurationOfVideo ) ; } }
Requests the full video duration from the API and stores the value for
 later reference
Requests the full video duration from the API and stores the value for later reference
// Request and store the full video duration // Unbind once the duration has been recorded // Unbind once the duration has been recorded