Skip to content
Snippets Groups Projects
Commit ecc7f656 authored by Jan-Hendrik Willms's avatar Jan-Hendrik Willms
Browse files

fixes #448

parent b55e4ef9
Branches
No related tags found
No related merge requests found
...@@ -35,13 +35,11 @@ class Course_FilesController extends AuthenticatedController ...@@ -35,13 +35,11 @@ class Course_FilesController extends AuthenticatedController
Navigation::activateItem('/course/files'); Navigation::activateItem('/course/files');
if (is_object($GLOBALS['user']) && $GLOBALS['user']->id !== 'nobody') { if (is_object($GLOBALS['user']) && $GLOBALS['user']->id !== 'nobody') {
$constraints = FileManager::getUploadTypeConfig($this->course->id);
PageLayout::addHeadElement('script', ['type' => 'text/javascript'], sprintf( PageLayout::addHeadElement('script', ['type' => 'text/javascript'], sprintf(
'STUDIP.Files.setUploadConstraints(%s);', 'STUDIP.Files.setUploadConstraints(%s);',
json_encode([ json_encode($constraints)
'filesize' => $GLOBALS['UPLOAD_TYPES']['default']['file_sizes'][$GLOBALS['user']->perms],
'type' => $GLOBALS['UPLOAD_TYPES']['default']['type'],
'file_types' => $GLOBALS['UPLOAD_TYPES']['default']['file_types'],
])
)); ));
} }
} }
......
...@@ -46,13 +46,11 @@ class FilesController extends AuthenticatedController ...@@ -46,13 +46,11 @@ class FilesController extends AuthenticatedController
throw new AccessDeniedException(); throw new AccessDeniedException();
} }
$constraints = FileManager::getUploadTypeConfig($this->user->id);
PageLayout::addHeadElement('script', ['type' => 'text/javascript'], sprintf( PageLayout::addHeadElement('script', ['type' => 'text/javascript'], sprintf(
'STUDIP.Files.setUploadConstraints(%s);', 'STUDIP.Files.setUploadConstraints(%s);',
json_encode([ json_encode($constraints)
'filesize' => $GLOBALS['UPLOAD_TYPES']['personalfiles']['file_sizes'][$this->user->perms],
'type' => $GLOBALS['UPLOAD_TYPES']['personalfiles']['type'],
'file_types' => $GLOBALS['UPLOAD_TYPES']['personalfiles']['file_types'],
])
)); ));
} }
......
...@@ -37,13 +37,11 @@ class Institute_FilesController extends AuthenticatedController ...@@ -37,13 +37,11 @@ class Institute_FilesController extends AuthenticatedController
Navigation::activateItem('/course/files'); Navigation::activateItem('/course/files');
if (is_object($GLOBALS['user']) && $GLOBALS['user']->id !== 'nobody') { if (is_object($GLOBALS['user']) && $GLOBALS['user']->id !== 'nobody') {
$constraints = FileManager::getUploadTypeConfig($this->institute->id);
PageLayout::addHeadElement('script', ['type' => 'text/javascript'], sprintf( PageLayout::addHeadElement('script', ['type' => 'text/javascript'], sprintf(
'STUDIP.Files.setUploadConstraints(%s);', 'STUDIP.Files.setUploadConstraints(%s);',
json_encode([ json_encode($constraints)
'filesize' => $GLOBALS['UPLOAD_TYPES']['default']['file_sizes'][$GLOBALS['user']->perms],
'type' => $GLOBALS['UPLOAD_TYPES']['default']['type'],
'file_types' => $GLOBALS['UPLOAD_TYPES']['default']['file_types'],
])
)); ));
} }
} }
......
...@@ -1736,17 +1736,21 @@ class FileManager ...@@ -1736,17 +1736,21 @@ class FileManager
if (is_null($user_id)) { if (is_null($user_id)) {
$user_id = $GLOBALS['user']->id; $user_id = $GLOBALS['user']->id;
} }
$status = $GLOBALS['perm']->get_perm($user_id);
$active_upload_type = 'default';
$range_object = get_object_by_range_id($range_id); $range_object = get_object_by_range_id($range_id);
$active_upload_type = null;
if ($range_object instanceof Course) { if ($range_object instanceof Course) {
$status = $GLOBALS['perm']->get_studip_perm($range_id, $user_id); $status = $GLOBALS['perm']->get_studip_perm($range_id, $user_id);
$active_upload_type = $range_object->status; $active_upload_type = $range_object->status;
} elseif ($range_object instanceof Institute) { } elseif ($range_object instanceof Institute) {
$status = $GLOBALS['perm']->get_studip_perm($range_id, $user_id); $status = $GLOBALS['perm']->get_studip_perm($range_id, $user_id);
$active_upload_type = 'institute'; $active_upload_type = 'institute';
} else { } elseif ($range_object instanceof User) {
$status = $GLOBALS['perm']->get_perm($user_id); $active_upload_type = 'personalfiles';
$active_upload_type = "personalfiles"; } elseif (Message::exists($range_id)) {
$active_upload_type = 'attachments';
} }
if (!isset($GLOBALS['UPLOAD_TYPES'][$active_upload_type])) { if (!isset($GLOBALS['UPLOAD_TYPES'][$active_upload_type])) {
......
...@@ -238,26 +238,6 @@ class MessageFolder extends StandardFolder implements FolderType ...@@ -238,26 +238,6 @@ class MessageFolder extends StandardFolder implements FolderType
{ {
} }
/**
* This method handles file upload validation.
*
* @param array $uploaded_file The uploaded file that shall be validated.
* @param string $user_id The user who wishes to upload a file
* in this MessageFolder.
*
* @return string|null An error message on failure, null on success.
*/
public function validateUpload(FileType $newfile, $user_id)
{
$status = $GLOBALS['perm']->get_perm($user_id);
$upload_type = [
'type' => $GLOBALS['UPLOAD_TYPES']['attachments']['type'],
'file_types' => $GLOBALS['UPLOAD_TYPES']['attachments']['file_types'],
'file_size' => $GLOBALS['UPLOAD_TYPES']['attachments']['file_sizes'][$status]
];
return $this->getValidationMessages($upload_type, $newfile);
}
/** /**
* Handles the deletion of a file inside this folder. * Handles the deletion of a file inside this folder.
* *
......
...@@ -165,21 +165,6 @@ class PublicFolder extends StandardFolder ...@@ -165,21 +165,6 @@ class PublicFolder extends StandardFolder
{ {
} }
/**
* {@inheritdoc}
*/
public function validateUpload(FileType $newfile, $userId)
{
$status = $GLOBALS['perm']->get_perm($userId);
$uploadType = [
'type' => $GLOBALS['UPLOAD_TYPES']['default']['type'],
'file_types' => $GLOBALS['UPLOAD_TYPES']['default']['file_types'],
'file_size' => $GLOBALS['UPLOAD_TYPES']['default']['file_sizes'][$status],
];
return $this->getValidationMessages($uploadType, $newfile);
}
/** /**
* {@inheritdoc} * {@inheritdoc}
*/ */
......
...@@ -75,7 +75,7 @@ const Files = { ...@@ -75,7 +75,7 @@ const Files = {
if (!Files.uploadConstraints) { if (!Files.uploadConstraints) {
return true; return true;
} }
if (file.size > Files.uploadConstraints.filesize) { if (file.size > Files.uploadConstraints.file_size) {
return false; return false;
} }
var ending = file.name.lastIndexOf('.') !== -1 ? file.name.substr(file.name.lastIndexOf('.') + 1) : ''; var ending = file.name.lastIndexOf('.') !== -1 ? file.name.substr(file.name.lastIndexOf('.') + 1) : '';
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment