Software: Apache. PHP/5.3.29 uname -a: Linux tardis23.nocplanet.net 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024
Safe-mode: OFF (not secure) /home/memoriacel/public_html/2018/panel/FileAPI-master/lib/ drwxr-xr-x | |
| Viewing file: Select action/file-type: /*global window, FileAPI */
(function (api, window){
"use strict";
var
document = window.document
, FormData = window.FormData
, Form = function (){ this.items = []; }
, encodeURIComponent = window.encodeURIComponent
;
Form.prototype = {
append: function (name, blob, file, type){
this.items.push({
name: name
, blob: blob && blob.blob || (blob == void 0 ? '' : blob)
, file: blob && (file || blob.name)
, type: blob && (type || blob.type)
});
},
each: function (fn){
var i = 0, n = this.items.length;
for( ; i < n; i++ ){
fn.call(this, this.items[i]);
}
},
toData: function (fn, options){
// allow chunked transfer if we have only one file to send
// flag is used below and in XHR._send
options._chunked = api.support.chunked && options.chunkSize > 0 && api.filter(this.items, function (item){ return item.file; }).length == 1;
if( !api.support.html5 ){
api.log('FileAPI.Form.toHtmlData');
this.toHtmlData(fn);
}
else if( !api.formData || this.multipart || !FormData ){
api.log('FileAPI.Form.toMultipartData');
this.toMultipartData(fn);
}
else if( options._chunked ){
api.log('FileAPI.Form.toPlainData');
this.toPlainData(fn);
}
else {
api.log('FileAPI.Form.toFormData');
this.toFormData(fn);
}
},
_to: function (data, complete, next, arg){
var queue = api.queue(function (){
complete(data);
});
this.each(function (file){
try{
next(file, data, queue, arg);
}
catch( err ){
api.log('FileAPI.Form._to: ' + err.message);
complete(err);
}
});
queue.check();
},
toHtmlData: function (fn){
this._to(document.createDocumentFragment(), fn, function (file, data/**DocumentFragment*/){
var blob = file.blob, hidden;
if( file.file ){
api.reset(blob, true);
// set new name
blob.name = file.name;
blob.disabled = false;
data.appendChild(blob);
}
else {
hidden = document.createElement('input');
hidden.name = file.name;
hidden.type = 'hidden';
hidden.value = blob;
data.appendChild(hidden);
}
});
},
toPlainData: function (fn){
this._to({}, fn, function (file, data, queue){
if( file.file ){
data.type = file.file;
}
if( file.blob.toBlob ){
// canvas
queue.inc();
_convertFile(file, function (file, blob){
data.name = file.name;
data.file = blob;
data.size = blob.length;
data.type = file.type;
queue.next();
});
}
else if( file.file ){
// file
data.name = file.blob.name;
data.file = file.blob;
data.size = file.blob.size;
data.type = file.type;
}
else {
// additional data
if( !data.params ){
data.params = [];
}
data.params.push(encodeURIComponent(file.name) +"="+ encodeURIComponent(file.blob));
}
data.start = -1;
data.end = data.file && data.file.FileAPIReadPosition || -1;
data.retry = 0;
});
},
toFormData: function (fn){
this._to(new FormData, fn, function (file, data, queue){
if( file.blob && file.blob.toBlob ){
queue.inc();
_convertFile(file, function (file, blob){
data.append(file.name, blob, file.file);
queue.next();
});
}
else if( file.file ){
data.append(file.name, file.blob, file.file);
}
else {
data.append(file.name, file.blob);
}
if( file.file ){
data.append('_'+file.name, file.file);
}
});
},
toMultipartData: function (fn){
this._to([], fn, function (file, data, queue, boundary){
queue.inc();
_convertFile(file, function (file, blob){
data.push(
'--_' + boundary + ('\r\nContent-Disposition: form-data; name="'+ file.name +'"'+ (file.file ? '; filename="'+ encodeURIComponent(file.file) +'"' : '')
+ (file.file ? '\r\nContent-Type: '+ (file.type || 'application/octet-stream') : '')
+ '\r\n'
+ '\r\n'+ (file.file ? blob : encodeURIComponent(blob))
+ '\r\n')
);
queue.next();
}, true);
}, api.expando);
}
};
function _convertFile(file, fn, useBinaryString){
var blob = file.blob, filename = file.file;
if( filename ){
if( !blob.toDataURL ){
// The Blob is not an image.
api.readAsBinaryString(blob, function (evt){
if( evt.type == 'load' ){
fn(file, evt.result);
}
});
return;
}
var
mime = { 'image/jpeg': '.jpe?g', 'image/png': '.png' }
, type = mime[file.type] ? file.type : 'image/png'
, ext = mime[type] || '.png'
, quality = blob.quality || 1
;
if( !filename.match(new RegExp(ext+'$', 'i')) ){
// Does not change the current extension, but add a new one.
filename += ext.replace('?', '');
}
file.file = filename;
file.type = type;
if( !useBinaryString && blob.toBlob ){
blob.toBlob(function (blob){
fn(file, blob);
}, type, quality);
}
else {
fn(file, api.toBinaryString(blob.toDataURL(type, quality)));
}
}
else {
fn(file, blob);
}
}
// @export
api.Form = Form;
})(FileAPI, window);
|
:: Command execute :: | |
--[ c99shell v.2.1 [PHP 7 Update] [1.12.2019] maintained by KaizenLouie and updated by cermmik | C99Shell Github (MySQL update) | Generation time: 0.0055 ]-- |