Skip to content
Snippets Groups Projects
Commit 00a96a5c authored by Tim Steiner's avatar Tim Steiner
Browse files

Prevent a file from being attached multiple times upon submission.

(Update the array keys of the files array after insert)
parent 550fb69c
No related branches found
No related tags found
No related merge requests found
......@@ -370,6 +370,17 @@ class Requests_RequestModel extends Unl_Model
self::_insertFileRows($filesToInsert);
self::_updateFileRows($filesToUpdate);
self::_deleteFileRows($filesToDelete);
foreach ($models as $model) {
foreach (array_keys($model->_data['files']) as $fileKey) {
if ($fileKey >= 0) {
continue;
}
$newFileKey = $model->_data['files'][$fileKey]['requestFileId'];
$model->_data['files'][$newFileKey] = $model->_data['files'][$fileKey];
unset($model->_data['files'][$fileKey]);
}
}
foreach ($models as $model) {
$model->_setClean();
......@@ -471,7 +482,7 @@ class Requests_RequestModel extends Unl_Model
foreach ($models as $model) {
$file = $model['model']->_data['files'][$model['fileId']];
$file['hash'] = hash('whirlpool', $file['data']);
if (strlen($file['data']) > 1024 * 1024) {
if (strlen($file['data']) >= 0) {
self::_saveFileToDisk($file['data']);
$file['data'] = "''";
} else {
......@@ -483,7 +494,7 @@ class Requests_RequestModel extends Unl_Model
. $db->quoteInto('?)' , $file['hash']);
}
$sql .= implode(', ', $sqlParts);
$db->query($sql);
$lastId = $db->lastInsertId();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment