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

fixes #448

parent b2845b88
No related branches found
No related tags found
No related merge requests found
......@@ -35,13 +35,11 @@ class Course_FilesController extends AuthenticatedController
Navigation::activateItem('/course/files');
if (is_object($GLOBALS['user']) && $GLOBALS['user']->id !== 'nobody') {
$constraints = FileManager::getUploadTypeConfig($this->course->id);
PageLayout::addHeadElement('script', ['type' => 'text/javascript'], sprintf(
'STUDIP.Files.setUploadConstraints(%s);',
json_encode([
'filesize' => $GLOBALS['UPLOAD_TYPES']['default']['file_sizes'][$GLOBALS['user']->perms],
'type' => $GLOBALS['UPLOAD_TYPES']['default']['type'],
'file_types' => $GLOBALS['UPLOAD_TYPES']['default']['file_types'],
])
json_encode($constraints)
));
}
}
......
......@@ -46,13 +46,11 @@ class FilesController extends AuthenticatedController
throw new AccessDeniedException();
}
$constraints = FileManager::getUploadTypeConfig($this->user->id);
PageLayout::addHeadElement('script', ['type' => 'text/javascript'], sprintf(
'STUDIP.Files.setUploadConstraints(%s);',
json_encode([
'filesize' => $GLOBALS['UPLOAD_TYPES']['personalfiles']['file_sizes'][$this->user->perms],
'type' => $GLOBALS['UPLOAD_TYPES']['personalfiles']['type'],
'file_types' => $GLOBALS['UPLOAD_TYPES']['personalfiles']['file_types'],
])
json_encode($constraints)
));
}
......
......@@ -37,13 +37,11 @@ class Institute_FilesController extends AuthenticatedController
Navigation::activateItem('/course/files');
if (is_object($GLOBALS['user']) && $GLOBALS['user']->id !== 'nobody') {
$constraints = FileManager::getUploadTypeConfig($this->institute->id);
PageLayout::addHeadElement('script', ['type' => 'text/javascript'], sprintf(
'STUDIP.Files.setUploadConstraints(%s);',
json_encode([
'filesize' => $GLOBALS['UPLOAD_TYPES']['default']['file_sizes'][$GLOBALS['user']->perms],
'type' => $GLOBALS['UPLOAD_TYPES']['default']['type'],
'file_types' => $GLOBALS['UPLOAD_TYPES']['default']['file_types'],
])
json_encode($constraints)
));
}
}
......
......@@ -1736,17 +1736,21 @@ class FileManager
if (is_null($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);
$active_upload_type = null;
if ($range_object instanceof Course) {
$status = $GLOBALS['perm']->get_studip_perm($range_id, $user_id);
$active_upload_type = $range_object->status;
} elseif ($range_object instanceof Institute) {
$status = $GLOBALS['perm']->get_studip_perm($range_id, $user_id);
$active_upload_type = 'institute';
} else {
$status = $GLOBALS['perm']->get_perm($user_id);
$active_upload_type = "personalfiles";
} elseif ($range_object instanceof User) {
$active_upload_type = 'personalfiles';
} elseif (Message::exists($range_id)) {
$active_upload_type = 'attachments';
}
if (!isset($GLOBALS['UPLOAD_TYPES'][$active_upload_type])) {
......
......@@ -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.
*
......
......@@ -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}
*/
......
......@@ -75,7 +75,7 @@ const Files = {
if (!Files.uploadConstraints) {
return true;
}
if (file.size > Files.uploadConstraints.filesize) {
if (file.size > Files.uploadConstraints.file_size) {
return false;
}
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.
Finish editing this message first!
Please register or to comment