PHP Class elFinderVolumeBox

Author: Dmitry (dio) Levashov
Author: Cem (discofever)
Inheritance: extends elFinderVolumeDriver
显示文件 Open project: studio-42/elfinder

Public Properties

Property Type Description
$netMountKey string Net mount key.

Protected Properties

Property Type Description
$HasdirsCache array hasCache by folders.
$driverId string Driver id Must be started from letter and contains [a-z0-9] Used as part of volume id.
$tmp string Directory for tmp files If not set driver will try to use tmbDir as tmpDir.
$token object Box.com token object.

Public Methods

Method Description
__construct ( ) Constructor Extend options with required fields.
getContentUrl ( string $hash, array $options = [] ) : string Return content URL.
netmountPrepare ( $options ) : array Prepare Call from elFinder::netmout() before volume->mount().
netunmount ( $netVolumes, $key ) : boolean process of on netunmount Drop box & rm thumbs.
umount ( ) Close opened connection.

Protected Methods

Method Description
_abspath ( string $path ) : string Convert path related to root dir into real path.
_archive ( string $dir, array $files, string $name, array $arc ) : string | boolean Create archive and return its path.
_basename ( string $path ) : string Return file name.
_bd_curlExec ( resource $curl, boolean | string $decodeOrParent = true, array $headers = [] ) : mixed Call curl_exec().
_bd_fetch ( $url, $contents = false ) : resource Creates a base cURL object which is compatible with the Box.com API.
_bd_getRawItem ( string $path ) : array Get dat(box metadata) from Box.com.
_bd_getThumbnail ( string $path ) : string | boolean Get thumbnail from Box.com.
_bd_obtainAccessToken ( $client_id, $client_secret, string $code ) Obtains a new access token from OAuth. This token is valid for one hour.
_bd_parseRaw ( string $raw ) : array Parse line from box metadata output and return file stat (array).
_bd_prepareCurl ( array $options = [] ) : resource Creates a base cURL object which is compatible with the Box.com API.
_bd_query ( $itemId, $fetch_self = false, $recursive = false ) : boolean | array Drive query and fetchAll.
_bd_refreshToken ( ) : true | string Get token and auto refresh.
_bd_splitPath ( string $path ) : array Get Parent ID, Item ID, Parent Path as an array from path.
_bd_unlink ( string $path, $type = null ) : boolean Remove item.
_checkArchivers ( ) Detect available archivers.
_chmod ( $path, $mode ) : boolean chmod implementation.
_copy ( string $source, string $targetDir, string $name ) : string | false Copy file into another file.
_dimensions ( string $path, string $mime ) : string Return object width and height Ususaly used for images, but can be realize for video etc.
_dirname ( string $path ) : string Return parent directory path.
_extract ( string $path, array $arc ) : true Extract files from archive.
_fclose ( resource $fp, $path = '' ) : boolean Close opened file.
_filePutContents ( string $path, string $content ) : boolean Write a string to a file.
_findSymlinks ( string $path ) : boolean Recursive symlinks search.
_fopen ( string $path, $mode = 'rb' ) : resource | false Open file and return file pointer.
_getContents ( string $path ) : string | false Get file contents.
_inpath ( string $path, string $parent ) : boolean Return true if $path is children of $parent.
_joinPath ( string $dir, string $name ) : string Join dir name and file name and retur full path.
_mkdir ( string $path, string $name ) : string | boolean Create dir and return created dir path or false on failed.
_mkfile ( string $path, string $name ) : string | boolean Create file and return it's path or false on failed.
_move ( string $source, $targetDir, string $name ) : string | boolean Move file into another parent dir.
_normpath ( string $path ) : string Return normalized path, this works the same as os.path.normpath() in Python.
_path ( string $path ) : string Return fake path started from root dir.
_relpath ( string $path ) : string Return file path related to root dir.
_rmdir ( string $path ) : boolean Remove dir.
_save ( resource $fp, $path, string $name, array $stat ) : boolean | string Create new file and write into it from file pointer.
_scandir ( string $path ) : array Return files list in directory.
_stat ( string $path ) : array | false Return stat for given path.
_subdirs ( string $path ) : boolean Return true if path is dir and has at least one childs directory.
_symlink ( string $target, string $path, $name ) : boolean Create symlink. FTP driver does not support symlinks.
_unlink ( string $path ) : boolean Remove file.
_unpack ( string $path, array $arc ) : true Unpack archive.
cacheDir ( string $path ) Cache dir contents.
configure ( ) Configure after successfull mount.
copy ( string $src, string $dst, string $name ) : string | false Copy file/recursive copy dir only in current volume.
createTmb ( string $path, $stat ) : string | false Create thumnbnail and return it's URL on success.
getSharedWebContentLink ( array $raw ) : array Return content URL.
init ( ) : boolean Prepare FTP connection Connect to remote server and check if credentials are correct, if so, store the connection id in $ftp_conn.
isNameExists ( string $path ) : array Return fileinfo based on filename For item ID based path file system Please override if needed on each drivers.
remove ( string $path, boolean $force = false ) : boolean Remove file/ recursive remove dir.
tmbname ( array $stat ) : string Return thumbnail file name for required file.

Method Details

__construct() public method

Constructor Extend options with required fields.
Author: Dmitry (dio) Levashov
Author: Cem (DiscoFever)
public __construct ( )

_abspath() protected method

Convert path related to root dir into real path.
Author: Dmitry (dio) Levashov
protected _abspath ( string $path ) : string
$path string file path
return string

_archive() protected method

Create archive and return its path.
Author: Dmitry (dio) Levashov,
Author: Alexey Sukhotin
protected _archive ( string $dir, array $files, string $name, array $arc ) : string | boolean
$dir string target dir
$files array files names list
$name string archive name
$arc array archiver options
return string | boolean

_basename() protected method

Return file name.
Author: Dmitry (dio) Levashov
protected _basename ( string $path ) : string
$path string file path
return string

_bd_curlExec() protected method

Call curl_exec().
protected _bd_curlExec ( resource $curl, boolean | string $decodeOrParent = true, array $headers = [] ) : mixed
$curl resource
$decodeOrParent boolean | string
$headers array
return mixed

_bd_fetch() protected method

Creates a base cURL object which is compatible with the Box.com API.
protected _bd_fetch ( $url, $contents = false ) : resource
return resource A compatible cURL object

_bd_getRawItem() protected method

Get dat(box metadata) from Box.com.
protected _bd_getRawItem ( string $path ) : array
$path string
return array box metadata

_bd_getThumbnail() protected method

Get thumbnail from Box.com.
protected _bd_getThumbnail ( string $path ) : string | boolean
$path string
return string | boolean | boolean

_bd_obtainAccessToken() protected method

Obtains a new access token from OAuth. This token is valid for one hour.
protected _bd_obtainAccessToken ( $client_id, $client_secret, string $code )
$code string The code returned by Box after successful log in

_bd_parseRaw() protected method

Parse line from box metadata output and return file stat (array).
Author: Dmitry Levashov
protected _bd_parseRaw ( string $raw ) : array
$raw string line from ftp_rawlist() output
return array

_bd_prepareCurl() protected method

Creates a base cURL object which is compatible with the Box.com API.
protected _bd_prepareCurl ( array $options = [] ) : resource
$options array cURL options
return resource A compatible cURL object

_bd_query() protected method

Drive query and fetchAll.
protected _bd_query ( $itemId, $fetch_self = false, $recursive = false ) : boolean | array
return boolean | array

_bd_refreshToken() protected method

Get token and auto refresh.
protected _bd_refreshToken ( ) : true | string
return true | string error message

_bd_splitPath() protected method

Get Parent ID, Item ID, Parent Path as an array from path.
protected _bd_splitPath ( string $path ) : array
$path string
return array

_checkArchivers() protected method

Detect available archivers.
protected _checkArchivers ( )

_chmod() protected method

chmod implementation.
protected _chmod ( $path, $mode ) : boolean
return boolean

_copy() protected method

Copy file into another file.
Author: Dmitry (dio) Levashov
protected _copy ( string $source, string $targetDir, string $name ) : string | false
$source string source file path
$targetDir string target directory path
$name string new file name
return string | false

_dimensions() protected method

..
Author: Dmitry (dio) Levashov
protected _dimensions ( string $path, string $mime ) : string
$path string file path
$mime string file mime type
return string

_dirname() protected method

Return parent directory path.
Author: Dmitry (dio) Levashov
protected _dirname ( string $path ) : string
$path string file path
return string

_extract() protected method

Extract files from archive.
Author: Dmitry (dio) Levashov,
Author: Alexey Sukhotin
protected _extract ( string $path, array $arc ) : true
$path string archive path
$arc array archiver command and arguments (same as in $this->archivers)
return true

_fclose() protected method

Close opened file.
Author: Dmitry (dio) Levashov
protected _fclose ( resource $fp, $path = '' ) : boolean
$fp resource file pointer
return boolean

_filePutContents() protected method

Write a string to a file.
Author: Dmitry (dio) Levashov
protected _filePutContents ( string $path, string $content ) : boolean
$path string file path
$content string new file content
return boolean

_fopen() protected method

Open file and return file pointer.
Author: Dmitry (dio) Levashov
protected _fopen ( string $path, $mode = 'rb' ) : resource | false
$path string file path
return resource | false

_getContents() protected method

Get file contents.
Author: Dmitry (dio) Levashov
protected _getContents ( string $path ) : string | false
$path string file path
return string | false

_inpath() protected method

Return true if $path is children of $parent.
Author: Dmitry (dio) Levashov
protected _inpath ( string $path, string $parent ) : boolean
$path string path to check
$parent string parent path
return boolean

_joinPath() protected method

Join dir name and file name and retur full path.
Author: Dmitry (dio) Levashov
protected _joinPath ( string $dir, string $name ) : string
$dir string
$name string
return string

_mkdir() protected method

Create dir and return created dir path or false on failed.
Author: Dmitry (dio) Levashov
protected _mkdir ( string $path, string $name ) : string | boolean
$path string parent dir path
$name string new directory name
return string | boolean

_mkfile() protected method

Create file and return it's path or false on failed.
Author: Dmitry (dio) Levashov
protected _mkfile ( string $path, string $name ) : string | boolean
$path string parent dir path
$name string new file name
return string | boolean

_move() protected method

Return new file path or false.
Author: Dmitry (dio) Levashov
protected _move ( string $source, $targetDir, string $name ) : string | boolean
$source string source file path
$name string file name
return string | boolean

_normpath() protected method

Return normalized path, this works the same as os.path.normpath() in Python.
Author: Troex Nevelin
protected _normpath ( string $path ) : string
$path string path
return string

_path() protected method

Return fake path started from root dir.
Author: Dmitry (dio) Levashov
protected _path ( string $path ) : string
$path string file path
return string

_relpath() protected method

Return file path related to root dir.
Author: Dmitry (dio) Levashov
protected _relpath ( string $path ) : string
$path string file path
return string

_rmdir() protected method

Remove dir.
Author: Dmitry (dio) Levashov
protected _rmdir ( string $path ) : boolean
$path string dir path
return boolean

_save() protected method

Return new file path or false on error.
Author: Dmitry (dio) Levashov
protected _save ( resource $fp, $path, string $name, array $stat ) : boolean | string
$fp resource file pointer
$name string file name
$stat array file stat (required by some virtual fs)
return boolean | string

_scandir() protected method

Return files list in directory.
Author: Dmitry (dio) Levashov
Author: Cem (DiscoFever)
protected _scandir ( string $path ) : array
$path string dir path
return array

_stat() protected method

Stat contains following fields: - (int) size file size in b. required - (int) ts file modification time in unix time. required - (string) mime mimetype. required for folders, others - optionally - (bool) read read permissions. required - (bool) write write permissions. required - (bool) locked is object locked. optionally - (bool) hidden is object hidden. optionally - (string) alias for symlinks - link target path relative to root path. optionally - (string) target for symlinks - link target path. optionally. If file does not exists - returns empty array or false.
Author: Dmitry (dio) Levashov
protected _stat ( string $path ) : array | false
$path string file path
return array | false

_subdirs() protected method

Return true if path is dir and has at least one childs directory.
Author: Dmitry (dio) Levashov
protected _subdirs ( string $path ) : boolean
$path string dir path
return boolean

_unpack() protected method

Unpack archive.
Author: Dmitry (dio) Levashov
Author: Alexey Sukhotin
protected _unpack ( string $path, array $arc ) : true
$path string archive path
$arc array archiver command and arguments (same as in $this->archivers)
return true

cacheDir() protected method

Cache dir contents.
Author: Dmitry Levashov
protected cacheDir ( string $path )
$path string dir path

configure() protected method

Configure after successfull mount.
Author: Dmitry (dio) Levashov
protected configure ( )

copy() protected method

Return new file path or false.
Author: Dmitry (dio) Levashov
Author: Naoki Sawada
protected copy ( string $src, string $dst, string $name ) : string | false
$src string source path
$dst string destination dir path
$name string new file name (optionaly)
return string | false

createTmb() protected method

Create thumnbnail and return it's URL on success.
Author: Dmitry (dio) Levashov
Author: Naoki Sawada
protected createTmb ( string $path, $stat ) : string | false
$path string file path
return string | false

getContentUrl() public method

Return content URL.
Author: Naoki Sawada
public getContentUrl ( string $hash, array $options = [] ) : string
$hash string file hash
$options array options
return string

init() protected method

Prepare FTP connection Connect to remote server and check if credentials are correct, if so, store the connection id in $ftp_conn.
Author: Dmitry (dio) Levashov
Author: Cem (DiscoFever)
protected init ( ) : boolean
return boolean

isNameExists() protected method

Return fileinfo based on filename For item ID based path file system Please override if needed on each drivers.
protected isNameExists ( string $path ) : array
$path string file cache
return array

netmountPrepare() public method

Prepare Call from elFinder::netmout() before volume->mount().
Author: Naoki Sawada
Author: Raja Sharma updating for Box
public netmountPrepare ( $options ) : array
return array

netunmount() public method

process of on netunmount Drop box & rm thumbs.
public netunmount ( $netVolumes, $key ) : boolean
return boolean

remove() protected method

Remove file/ recursive remove dir.
Author: Dmitry (dio) Levashov
Author: Naoki Sawada
protected remove ( string $path, boolean $force = false ) : boolean
$path string file path
$force boolean try to remove even if file locked
return boolean

tmbname() protected method

Return thumbnail file name for required file.
Author: Dmitry (dio) Levashov
protected tmbname ( array $stat ) : string
$stat array file stat
return string

umount() public method

Close opened connection.
Author: Dmitry (dio) Levashov
public umount ( )

Property Details

$HasdirsCache protected_oe property

hasCache by folders.
protected array $HasdirsCache
return array

$driverId protected_oe property

Driver id Must be started from letter and contains [a-z0-9] Used as part of volume id.
protected string $driverId
return string

$netMountKey public_oe property

Net mount key.
public string $netMountKey
return string

$tmp protected_oe property

Directory for tmp files If not set driver will try to use tmbDir as tmpDir.
protected string $tmp
return string

$token protected_oe property

Box.com token object.
protected object $token
return object