Skip to content

Commit 8304747

Browse files
author
Dan Jewett
committed
fix public / private
1 parent a7f9b89 commit 8304747

File tree

3 files changed

+17
-7
lines changed

3 files changed

+17
-7
lines changed

README.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,12 +32,14 @@ const propTypes = {
3232
file: PropTypes.object,
3333
cloudUpload: PropTypes.bool,
3434
style: PropTypes.object,
35+
public: PropTypes.bool,
3536
};
3637
3738
const defaultProps = {
3839
afterSuccess: () => {},
3940
cloudUpload: false,
4041
style: {},
42+
public: false,
4143
};
4244
4345
function FileUploader(props){
@@ -76,14 +78,16 @@ function FileUploader(props){
7678
pingUpload({
7779
file_name: blob.name,
7880
file_type: blob.type,
81+
public: props.public,
7982
}, blob); //XMLHttpRequest can take a raw file blob, which works better for streaming the file
8083
}
8184
else
8285
{
8386
upload({
8487
file_name: blob.name,
8588
file_type: blob.type,
86-
file_data: reader.result
89+
file_data: reader.result,
90+
public: props.public,
8791
});
8892
}
8993
}, false);

src/FileBaseController.php

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,12 +40,15 @@ public function store(Request $request)
4040
$file_type = $request->input('file_type');
4141
$file_data = $request->input('file_data');
4242

43+
$relative_directory = $request->input('directory') ?? null;
44+
$public = $request->input('public') ?? false;
45+
4346
//this is set up with two distinct routes so that the FileUploader component can still call the `store / post` method on the file object
4447
//in the cloud route, we are doing a direct upload to s3
4548
//in the other route, we are doing a an upload to the server, then to s3
4649
if (!$file_data)
4750
{
48-
$data = File::s3CreateUpload(new File, $file_name, $file_type);
51+
$data = File::s3CreateUpload(new File, $file_name, $file_type, $relative_directory, $public);
4952
$file = $data['file'];
5053
$upload_url = $data['upload_url'];
5154

@@ -61,7 +64,7 @@ public function store(Request $request)
6164
}
6265
else
6366
{
64-
$file = File::uploadAndCreateFileFromDataURI($file_name, $file_type, $file_data);
67+
$file = File::uploadAndCreateFileFromDataURI($file_name, $file_type, $file_data, $relative_directory, $public);
6568
$file->refresh();
6669

6770
return response()->json([
@@ -104,12 +107,15 @@ public function update(Request $request, File $file)
104107
$file_type = $request->input('file_type');
105108
$file_data = $request->input('file_data');
106109

110+
$relative_directory = $request->input('directory') ?? null;
111+
$public = $request->input('public') ?? false;
112+
107113
//this is set up with two distinct routes so that the FileUploader component can still call the `update / put` method on the file object
108114
//in the cloud route, we are doing a direct upload to s3
109115
//in the other route, we are doing a an upload to the server, then to s3
110116
if (!$file_data)
111117
{
112-
$data = File::s3CreateUpload($file, $file_name, $file_type);
118+
$data = File::s3CreateUpload($file, $file_name, $file_type, $relative_directory, $public);
113119
$file = $data['file'];
114120
$upload_url = $data['upload_url'];
115121

@@ -125,7 +131,7 @@ public function update(Request $request, File $file)
125131
}
126132
else
127133
{
128-
$uploadedFile = File::makeUploadFileFromDataURI($file_name, $file_type, $file_data);
134+
$uploadedFile = File::makeUploadFileFromDataURI($file_name, $file_type, $file_data, $relative_directory, $public);
129135
$upload_location = File::upload($uploadedFile, null, true);
130136

131137
$file->file_name = $file_name;

src/FileModel.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ public static function upload(UploadedFile $file, $relative_directory = null, $p
131131
: '');
132132

133133
// Public or private
134-
$visibility = $public ? 'public' : 'private';
134+
$visibility = $public ? 'public-read' : 'private';
135135

136136
return $disk->putFileAs($directory, $file, $file->getClientOriginalName(), $visibility);
137137
}
@@ -198,7 +198,7 @@ public function s3AuthorizeUploadUrl($public = false, $timing = '+24 hours')
198198
}
199199

200200
// Public or private
201-
$visibility = $public ? 'public' : 'private';
201+
$visibility = $public ? 'public-read' : 'private';
202202

203203
$s3Client = AWS::createClient($filesystem_driver);
204204

0 commit comments

Comments
 (0)