75 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			75 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| /**
 | |
|  *  Filemanager PHP connector
 | |
|  *  This file should at least declare auth() function
 | |
|  *  and instantiate the Filemanager as '$fm'.
 | |
|  *
 | |
|  *  IMPORTANT : by default Read and Write access is granted to everyone
 | |
|  *  Copy/paste this file to 'user.config.php' file to implement your own auth() function
 | |
|  *  to grant access to wanted users only
 | |
|  *
 | |
|  *  filemanager.php
 | |
|  *  use for ckeditor filemanager
 | |
|  *
 | |
|  *  @license  MIT License
 | |
|  *  @author   Simon Georget <simon (at) linea21 (dot) com>
 | |
|  *  @copyright  Authors
 | |
|  */
 | |
| 
 | |
| // Laravel init
 | |
| require getcwd().'/../../../../bootstrap/autoload.php';
 | |
| $app = require_once getcwd().'/../../../../bootstrap/app.php';
 | |
| 
 | |
| $kernel = $app->make('Illuminate\Contracts\Http\Kernel');
 | |
| 
 | |
| $response = $kernel->handle(
 | |
|   $request = Illuminate\Http\Request::capture()
 | |
| );
 | |
| 
 | |
| $id = $app['encrypter']->decrypt($_COOKIE[$app['config']['session.cookie']]);
 | |
| $app['session']->driver()->setId($id);
 | |
| $app['session']->driver()->start();
 | |
| 
 | |
| // Folder path
 | |
| $folderPath = $app->basePath().'/public/'.config('filemanager.folder_path');
 | |
| 
 | |
| // Check if user in authentified
 | |
| if (!$app['auth']->check()) {
 | |
|     $laravelAuth = false;
 | |
| } else {
 | |
|     // Check if user has all access
 | |
|   if ($app['auth']->user()->accessMediasAll()) {
 | |
|       $laravelAuth = true;
 | |
|   } elseif (method_exists($app['auth']->user(), 'accessMediasFolder')) {
 | |
|       // Check if user has access to one folder
 | |
|     if ($app['auth']->user()->accessMediasFolder()) {
 | |
|         // Folder name with user id
 | |
|       $folderPath .= 'user'.$app['auth']->id();
 | |
|       // Create folder if doesn't exist
 | |
|       if (!is_dir($folderPath)) {
 | |
|           mkdir($folderPath);
 | |
|       }
 | |
|         $laravelAuth = true;
 | |
|     } else {
 | |
|         $laravelAuth = false;
 | |
|     }
 | |
|   } else {
 | |
|       $laravelAuth = false;
 | |
|   }
 | |
| }
 | |
| 
 | |
| /**
 | |
|  *  Check if user is authorized.
 | |
|  *
 | |
|  *
 | |
|  *  @return bool true if access granted, false if no access
 | |
|  */
 | |
| function auth()
 | |
| {
 | |
|     return $GLOBALS['laravelAuth'];
 | |
| }
 | |
| 
 | |
| $fm = new Filemanager();
 | |
| 
 | |
| $fm->setFileRoot($folderPath);
 | 
