CC-2473: plupload: Cannot upload a 250Mb+ file
- fixed - we now use chuck to uploade files
This commit is contained in:
parent
2bde3298e4
commit
ce0396961d
4 changed files with 41 additions and 3 deletions
|
@ -315,6 +315,8 @@ class ApiController extends Zend_Controller_Action
|
||||||
|
|
||||||
$upload_dir = ini_get("upload_tmp_dir");
|
$upload_dir = ini_get("upload_tmp_dir");
|
||||||
StoredFile::uploadFile($upload_dir);
|
StoredFile::uploadFile($upload_dir);
|
||||||
|
$fileName = isset($_REQUEST["name"]) ? $_REQUEST["name"] : '';
|
||||||
|
StoredFile::copyFileToStor($upload_dir, $fileName);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function uploadRecordedAction()
|
public function uploadRecordedAction()
|
||||||
|
|
|
@ -7,6 +7,7 @@ class PluploadController extends Zend_Controller_Action
|
||||||
{
|
{
|
||||||
$ajaxContext = $this->_helper->getHelper('AjaxContext');
|
$ajaxContext = $this->_helper->getHelper('AjaxContext');
|
||||||
$ajaxContext->addActionContext('upload', 'json')
|
$ajaxContext->addActionContext('upload', 'json')
|
||||||
|
->addActionContext('copyfile', 'json')
|
||||||
->initContext();
|
->initContext();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -29,6 +30,14 @@ class PluploadController extends Zend_Controller_Action
|
||||||
|
|
||||||
die('{"jsonrpc" : "2.0"}');
|
die('{"jsonrpc" : "2.0"}');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function copyfileAction(){
|
||||||
|
$upload_dir = ini_get("upload_tmp_dir") . DIRECTORY_SEPARATOR . "plupload";
|
||||||
|
$filename = $this->_getParam('name');
|
||||||
|
StoredFile::copyFileToStor($upload_dir, $filename);
|
||||||
|
|
||||||
|
die('{"jsonrpc" : "2.0"}');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -795,6 +795,32 @@ class StoredFile {
|
||||||
die('{"jsonrpc" : "2.0", "error" : {"code": 102, "message": "Failed to open output stream."}, "id" : "id"}');
|
die('{"jsonrpc" : "2.0", "error" : {"code": 102, "message": "Failed to open output stream."}, "id" : "id"}');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*$audio_file = $p_targetDir . DIRECTORY_SEPARATOR . $fileName;
|
||||||
|
|
||||||
|
$md5 = md5_file($audio_file);
|
||||||
|
$duplicate = StoredFile::RecallByMd5($md5);
|
||||||
|
if ($duplicate) {
|
||||||
|
if (PEAR::isError($duplicate)) {
|
||||||
|
die('{"jsonrpc" : "2.0", "error" : {"code": 101, "message": ' . $duplicate->getMessage() .'}}');
|
||||||
|
}
|
||||||
|
if (file_exists($duplicate->getFilePath())) {
|
||||||
|
$duplicateName = $duplicate->getMetadataValue('MDATA_KEY_TITLE');
|
||||||
|
die('{"jsonrpc" : "2.0", "error" : {"code": 101, "message": "An identical audioclip named ' . $duplicateName . ' already exists in the storage server."}}');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$storDir = MusicDir::getStorDir();
|
||||||
|
$stor = $storDir->getDirectory();
|
||||||
|
|
||||||
|
$stor .= "/organize";
|
||||||
|
|
||||||
|
$audio_stor = $stor . DIRECTORY_SEPARATOR . $fileName;
|
||||||
|
|
||||||
|
$r = @copy($audio_file, $audio_stor);*/
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function copyFileToStor($p_targetDir, $fileName){
|
||||||
$audio_file = $p_targetDir . DIRECTORY_SEPARATOR . $fileName;
|
$audio_file = $p_targetDir . DIRECTORY_SEPARATOR . $fileName;
|
||||||
|
|
||||||
$md5 = md5_file($audio_file);
|
$md5 = md5_file($audio_file);
|
||||||
|
@ -817,7 +843,6 @@ class StoredFile {
|
||||||
$audio_stor = $stor . DIRECTORY_SEPARATOR . $fileName;
|
$audio_stor = $stor . DIRECTORY_SEPARATOR . $fileName;
|
||||||
|
|
||||||
$r = @copy($audio_file, $audio_stor);
|
$r = @copy($audio_file, $audio_stor);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function getFileCount()
|
public static function getFileCount()
|
||||||
|
|
|
@ -1,10 +1,11 @@
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
var uploader;
|
var uploader;
|
||||||
|
|
||||||
$("#plupload_files").pluploadQueue({
|
uploader = $("#plupload_files").pluploadQueue({
|
||||||
// General settings
|
// General settings
|
||||||
runtimes : 'html5,html4',
|
runtimes : 'html5,html4',
|
||||||
url : '/Plupload/upload/format/json',
|
url : '/Plupload/upload/format/json',
|
||||||
|
chunk_size: '5mb',
|
||||||
multiple_queues : 'true',
|
multiple_queues : 'true',
|
||||||
filters : [
|
filters : [
|
||||||
{title: "Audio Files", extensions: "ogg,mp3"}
|
{title: "Audio Files", extensions: "ogg,mp3"}
|
||||||
|
@ -24,6 +25,7 @@ $(document).ready(function() {
|
||||||
|
|
||||||
$("#plupload_error").find("table").append(row);
|
$("#plupload_error").find("table").append(row);
|
||||||
}
|
}
|
||||||
|
$.get('/Plupload/copyfile/format/json/name/'+file.name);
|
||||||
});
|
});
|
||||||
|
|
||||||
var uploadProgress = false;
|
var uploadProgress = false;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue