File Manager
Upload
Current Directory: /home/lartcid/public_html/journal.lartc.id
[Back]
..
[Open]
Hapus
Rename
.htaccess
[Edit]
Hapus
Rename
.well-known
[Open]
Hapus
Rename
README.md
[Edit]
Hapus
Rename
api
[Open]
Hapus
Rename
cache
[Open]
Hapus
Rename
cgi-bin
[Open]
Hapus
Rename
classes
[Open]
Hapus
Rename
config.TEMPLATE.inc.php
[Edit]
Hapus
Rename
config.inc.php
[Edit]
Hapus
Rename
controllers
[Open]
Hapus
Rename
cypress.json
[Edit]
Hapus
Rename
dbscripts
[Open]
Hapus
Rename
docs
[Open]
Hapus
Rename
error_log
[Edit]
Hapus
Rename
favicon.ico
[Edit]
Hapus
Rename
index.php
[Edit]
Hapus
Rename
js
[Open]
Hapus
Rename
lib
[Open]
Hapus
Rename
locale
[Open]
Hapus
Rename
mini.php
[Edit]
Hapus
Rename
pages
[Open]
Hapus
Rename
php.ini
[Edit]
Hapus
Rename
plugins
[Open]
Hapus
Rename
public
[Open]
Hapus
Rename
registry
[Open]
Hapus
Rename
scheduledTaskLogs
[Open]
Hapus
Rename
schemas
[Open]
Hapus
Rename
styles
[Open]
Hapus
Rename
templates
[Open]
Hapus
Rename
tools
[Open]
Hapus
Rename
Edit File
/** * @file js/controllers/form/FileUploadFormHandler.js * * Copyright (c) 2014-2021 Simon Fraser University * Copyright (c) 2000-2021 John Willinsky * Distributed under the GNU GPL v3. For full terms see the file docs/COPYING. * * @class FileUploadFormHandler * @ingroup js_controllers_form * * @brief File upload form handler. */ (function($) { /** * @constructor * * @extends $.pkp.controllers.form.AjaxFormHandler * * @param {jQueryObject} $form The wrapped HTML form element. * @param {{ * readOnly: boolean, * resetUploader: boolean, * $uploader: jQueryObject, * $preview: jQueryObject, * uploaderOptions: Object * }} options Form validation options. */ $.pkp.controllers.form.FileUploadFormHandler = function($form, options) { this.parent($form, options); if (options.readOnly === undefined || options.readOnly === null) { if (options.resetUploader !== undefined) { this.resetUploader_ = options.resetUploader; } // An optional preview container for the file. If this option is passed // the preview container will be hidden when a new file is uploaded and // when the `fileDeleted` event is fired. if (options.$preview !== undefined && options.$preview.length) { this.$preview = options.$preview; this.bind('fileDeleted', this.callbackWrapper(this.fileDeleted)); } // Attach the uploader handler to the uploader HTML element. this.attachUploader_(options.$uploader, options.uploaderOptions); this.uploaderSetup(options.$uploader); } }; $.pkp.classes.Helper.inherits( $.pkp.controllers.form.FileUploadFormHandler, $.pkp.controllers.form.AjaxFormHandler); /** * Reset the uploader widget flag. * @private * @type {boolean} */ $.pkp.controllers.form.FileUploadFormHandler.prototype. resetUploader_ = false; /** * The file preview DOM element. A jQuery object when available * @protected * @type {boolean|jQueryObject} */ $.pkp.controllers.form.FileUploadFormHandler.prototype. $preview = false; // // Extended methods from AjaxFormHandler. // /** * @inheritDoc */ $.pkp.controllers.form.FileUploadFormHandler.prototype.handleResponse = function(formElement, jsonData) { var fileUploader; if (this.resetUploader_) { fileUploader = $('#plupload', this.getHtmlElement()) .plupload('getUploader'); fileUploader.splice(); fileUploader.refresh(); // Reset the temporary file id value. $('#temporaryFileId', this.getHtmlElement()).val(''); } return /** @type {boolean} */ ( this.parent('handleResponse', formElement, jsonData)); }; // // Public methods // /** * The setup callback of the uploader. * @param {jQueryObject} $uploader Element that contains the plupload object. */ $.pkp.controllers.form.FileUploadFormHandler.prototype. uploaderSetup = function($uploader) { var uploadHandler = $.pkp.classes.Handler.getHandler($uploader); // Subscribe to uploader events. uploadHandler.pluploader.bind('FileUploaded', this.callbackWrapper(this.handleUploadResponse)); }; /** * Handle the response of a "file upload" request. * @param {Object} caller The original context in which the callback was called. * @param {Object} pluploader The pluploader object. * @param {Object} file The data of the uploaded file. * @param {{response: string}} ret The serialized JSON response. */ $.pkp.controllers.form.FileUploadFormHandler.prototype. handleUploadResponse = function(caller, pluploader, file, ret) { // Handle the server's JSON response. var jsonData = /** @type {boolean|{uploadedFile: Object, temporaryFileId: string, content: string}} */ (this.handleJson($.parseJSON(ret.response))), $uploadForm, $temporaryFileId; if (jsonData !== false) { // Trigger the file uploaded event. this.trigger('fileUploaded', [jsonData.uploadedFile]); // Hide preview if one exists if (this.$preview) { this.$preview.hide(); } if (jsonData.content === '') { // Successful upload to temporary file; save to main form. $uploadForm = this.getHtmlElement(); $temporaryFileId = $uploadForm.find('#temporaryFileId'); $temporaryFileId.val(jsonData.temporaryFileId); } else { // Display the revision confirmation form. this.replaceWith(jsonData.content); } } }; /** * Fires when the file has been removed */ $.pkp.controllers.form.FileUploadFormHandler.prototype. fileDeleted = function() { if (this.$preview) { this.$preview.hide(); } }; // // Private methods // /** * Attach the uploader handler. * @private * @param {jQueryObject} $uploader The wrapped HTML uploader element. * @param {Object} options Uploader options. */ $.pkp.controllers.form.FileUploadFormHandler.prototype. attachUploader_ = function($uploader, options) { // Attach the uploader handler to the uploader div. $uploader.pkpHandler('$.pkp.controllers.UploaderHandler', options); }; }(jQuery));
Simpan