April 9 update

This commit is contained in:
George Frederick "Buzz" Beurling
2020-04-09 17:20:03 -04:00
parent 94509caf3c
commit 50abb9d909
57 changed files with 2635 additions and 854 deletions

View File

@@ -22,6 +22,11 @@ class GoogleDriveController extends Controller
return view('admin.files.Google Drive.index',['folder' => $folder]);
}
public function indexFolder($folder = '')
{
return view('admin.files.Google Drive.index',['folder' => $folder,'mode' => 'folder']);
}
/**
* Show the form for creating a new file.
*
@@ -172,6 +177,14 @@ class GoogleDriveController extends Controller
->where('type', '=', 'file')
->where('filename', '=', pathinfo($filename, PATHINFO_FILENAME))
->first(); // there can be duplicate file names!
if ($file == null)
{
$filename = \request('f');
$file = $contents
->where('type', '=', 'file')
->where('filename', '=', pathinfo($filename, PATHINFO_FILENAME))
->first(); // there can be duplicate file names!
}
$rawData = Storage::cloud()->get($file['path']);
$filename = urlencode($filename);
@@ -335,76 +348,71 @@ class GoogleDriveController extends Controller
public function getFileStructure()
{
return collect([
'🔒.Privé' => [
'.Systeme' => [
'rank' => [1 => 'rwp'],
'job' => [],
'user' => []
],
'🔒.Privé/🔒.Cadet' => [
'.Systeme/.Fichier' => [
'rank' => [1 => 'rwp'],
'job' => [],
'user' => []
],
'🔒.Privé/🔒.ETAMAS' => [
'.Systeme/.Fichier/.PlanDeCours' => [
'rank' => [1 => 'rwp'],
'job' => [],
'user' => []
],
'🔒.Privé/🔒.Officier' => [
'.Privé' => [
'rank' => [1 => 'rwp'],
'job' => [],
'user' => []
],
'🔒.Privé/🔒.Staff' => [
'.Privé/.Cadet' => [
'rank' => [1 => 'rwp'],
'job' => [],
'user' => []
],
'🔒.Privé/🔒.Staff/🔒.Guide' => [
'.Privé/.ETAMAS' => [
'rank' => [1 => 'rwp'],
'job' => [],
'user' => []
],
'🔒.Publique' => [
'.Privé/.Officier' => [
'rank' => [1 => 'rwp'],
'job' => [],
'user' => []
],
'.Privé/.Staff' => [
'rank' => [1 => 'rwp'],
'job' => [],
'user' => []
],
'.Privé/.Staff/.Guide' => [
'rank' => [1 => 'rwp'],
'job' => [],
'user' => []
],
'.Privé/.Staff/.Instruction' => [
'rank' => [1 => 'rwp'],
'job' => [],
'user' => []
],
'.Publique' => [
'rank' => [1 => 'rwp',0 => 'r'],
'job' => [],
'user' => []
],
'🔒.Publique/🔒.Fichier' => [
'.Publique/.Fichier' => [
'rank' => [1 => 'rwp',0 => 'r'],
'job' => [],
'user' => []
],
'🔒.Publique/🔒.Image' => [
'.Publique/.Image' => [
'rank' => [1 => 'rwp',0 => 'r'],
'job' => [],
'user' => []
],
'🔒.Système' => [
'rank' => [1 => 'rwp'],
'job' => [],
'user' => []
],
'🔒.Système/🔒.Fichier' => [
'rank' => [1 => 'rwp'],
'job' => [],
'user' => []
],
'🔒.Système/🔒.Image' => [
'rank' => [1 => 'rwp'],
'job' => [],
'user' => []
],
'🔒.Système/🔒.Image/🔒.Nouvelle' => [
'rank' => [1 => 'rwp'],
'job' => [],
'user' => []
],
'🔒.Système/🔒.Image/🔒.Profil' => [
'rank' => [1 => 'rwp'],
'job' => [],
'user' => []
],
]);
}
@@ -412,7 +420,7 @@ class GoogleDriveController extends Controller
{
$contents = collect(\Storage::cloud()->listContents($d, false));
$dir = $contents->where('type', '=', 'dir');
$dir = $dir->where('filename','=','🔒');
$dir = $dir->where('filename','=','');
return $dir;
}
@@ -481,6 +489,142 @@ class GoogleDriveController extends Controller
return view('admin.files.Google Drive.permission.edit',['folder' => $dir,'subject' => $foo,'perm' => $perm,'s' => $subject]);
}
public function addPermissionModal($folder,$subject)
{
$dir = GoogleDriveFile::find($folder);
$list = null;
if ($subject == 'rank')
{
$list = \App\Rank::all();
}
elseif ($subject == 'job')
{
$list = \App\Job::all();
}
else
{
$list = \App\User::all();
}
return view('admin.files.Google Drive.permission.add',['folder' => $dir,'list' => $list,'s' => $subject]);
}
public function patchPermission(Request $request,$folder,$subject,$id)
{
$f = GoogleDriveFile::find($folder);
$permstring = '';
if (isset($request->read))
{
if ($request->read == 'on')
{
$permstring = $permstring.'r';
}
}
if (isset($request->write))
{
if ($request->write == 'on')
{
$permstring = $permstring.'w';
}
}
if (isset($request->perm))
{
if ($request->perm == 'on')
{
$permstring = $permstring.'p';
}
}
if ($subject == 'rank')
{
$temp = $f->rank_permission;
$temp[$id] = $permstring;
$f->rank_permission = $temp;
}
if ($subject == 'job')
{
$temp = $f->job_permission;
$temp[$id] = $permstring;
$f->job_permission = $temp;
}
if ($subject == 'user')
{
$temp = $f->user_permission;
$temp[$id] = $permstring;
$f->user_permission = $temp;
}
$f->save();
return redirect()->back()->with('success','Modification enregistré avec succès');
}
public function addPermission(Request $request,$folder,$subject)
{
$f = GoogleDriveFile::find($folder);
$permstring = '';
if (isset($request->read))
{
if ($request->read == 'on')
{
$permstring = $permstring.'r';
}
}
if (isset($request->write))
{
if ($request->write == 'on')
{
$permstring = $permstring.'w';
}
}
if (isset($request->perm))
{
if ($request->perm == 'on')
{
$permstring = $permstring.'p';
}
}
if ($subject == 'rank')
{
$temp = $f->rank_permission;
$temp[$request->id] = $permstring;
$f->rank_permission = $temp;
}
if ($subject == 'job')
{
$temp = $f->job_permission;
$temp[$request->id] = $permstring;
$f->job_permission = $temp;
}
if ($subject == 'user')
{
$temp = $f->user_permission;
$temp[$request->id] = $permstring;
$f->user_permission = $temp;
}
$f->save();
return redirect()->back()->with('success','Modification enregistré avec succès');
}
public function deletePermission($folder,$subject,$id)
{
$f = GoogleDriveFile::find($folder);
if ($subject == 'rank')
{
$temp = $f->rank_permission;
unset($temp[$id]);
$f->rank_permission = $temp;
}
if ($subject == 'job')
{
$temp = $f->job_permission;
unset($temp[$id]);
$f->job_permission = $temp;
}
if ($subject == 'user')
{
$temp = $f->user_permission;
unset($temp[$id]);
$f->user_permission = $temp;
}
$f->save();
return redirect()->back()->with('success','Modification enregistré avec succès');
}
}