本文整理汇总了PHP中elFinder::getStaticVar方法的典型用法代码示例。如果您正苦于以下问题:PHP elFinder::getStaticVar方法的具体用法?PHP elFinder::getStaticVar怎么用?PHP elFinder::getStaticVar使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类elFinder
的用法示例。
在下文中一共展示了elFinder::getStaticVar方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: configure
protected function configure()
{
parent::configure();
$this->tmpPath = '';
if (!empty($this->options['tmpPath'])) {
if ((is_dir($this->options['tmpPath']) || @mkdir($this->options['tmpPath'])) && is_writable($this->options['tmpPath'])) {
$this->tmpPath = $this->options['tmpPath'];
}
}
if (!$this->tmpPath && ($tmp = elFinder::getStaticVar('commonTempPath'))) {
$this->tmpPath = $tmp;
}
$this->mimeDetect = 'internal';
}
示例2: configure
/**
* Configure after successfull mount.
*
* @return void
* @author Dmitry (dio) Levashov
**/
protected function configure()
{
parent::configure();
if (!empty($this->options['tmpPath'])) {
if ((is_dir($this->options['tmpPath']) || @mkdir($this->options['tmpPath'], 0755, true)) && is_writable($this->options['tmpPath'])) {
$this->tmp = $this->options['tmpPath'];
}
}
if (!$this->tmp && ($tmp = elFinder::getStaticVar('commonTempPath'))) {
$this->tmp = $tmp;
}
if (!$this->tmp && $this->tmbPath) {
$this->tmp = $this->tmbPath;
}
if (!$this->tmp) {
$this->disabled[] = 'mkfile';
$this->disabled[] = 'paste';
$this->disabled[] = 'duplicate';
$this->disabled[] = 'upload';
$this->disabled[] = 'edit';
$this->disabled[] = 'archive';
$this->disabled[] = 'extract';
}
// echo $this->tmp;
}
示例3: init
/**
* Prepare FTP connection
* Connect to remote server and check if credentials are correct, if so, store the connection id in $ftp_conn
*
* @return bool
* @author Dmitry (dio) Levashov
* @author Cem (DiscoFever)
**/
protected function init()
{
if (!class_exists('PDO', false)) {
return $this->setError('PHP PDO class is require.');
}
if (!$this->options['consumerKey'] || !$this->options['consumerSecret'] || !$this->options['accessToken'] || !$this->options['accessTokenSecret']) {
return $this->setError('Required options undefined.');
}
if (empty($this->options['metaCachePath']) && defined('ELFINDER_DROPBOX_META_CACHE_PATH')) {
$this->options['metaCachePath'] = ELFINDER_DROPBOX_META_CACHE_PATH;
}
// make net mount key
$this->netMountKey = md5(join('-', array('dropbox', $this->options['path'])));
if (!$this->oauth) {
if (defined('ELFINDER_DROPBOX_USE_CURL_PUT')) {
$this->oauth = new Dropbox_OAuth_Curl($this->options['consumerKey'], $this->options['consumerSecret']);
} else {
if (class_exists('OAuth', false)) {
$this->oauth = new Dropbox_OAuth_PHP($this->options['consumerKey'], $this->options['consumerSecret']);
} else {
if (!class_exists('HTTP_OAuth_Consumer')) {
// We're going to try to load in manually
include 'HTTP/OAuth/Consumer.php';
}
if (class_exists('HTTP_OAuth_Consumer', false)) {
$this->oauth = new Dropbox_OAuth_PEAR($this->options['consumerKey'], $this->options['consumerSecret']);
}
}
}
}
if (!$this->oauth) {
return $this->setError('OAuth extension not loaded.');
}
// normalize root path
$this->root = $this->options['path'] = $this->_normpath($this->options['path']);
if (empty($this->options['alias'])) {
$this->options['alias'] = $this->options['path'] === '/' ? 'Dropbox.com' : 'Dropbox' . $this->options['path'];
}
$this->rootName = $this->options['alias'];
try {
$this->oauth->setToken($this->options['accessToken'], $this->options['accessTokenSecret']);
$this->dropbox = new Dropbox_API($this->oauth, $this->options['root']);
} catch (Dropbox_Exception $e) {
$this->session->remove('DropboxTokens');
return $this->setError('Dropbox error: ' . $e->getMessage());
}
// user
if (empty($this->options['dropboxUid'])) {
try {
$res = $this->dropbox->getAccountInfo();
$this->options['dropboxUid'] = $res['uid'];
} catch (Dropbox_Exception $e) {
$this->session->remove('DropboxTokens');
return $this->setError('Dropbox error: ' . $e->getMessage());
}
}
$this->dropboxUid = $this->options['dropboxUid'];
$this->tmbPrefix = 'dropbox' . base_convert($this->dropboxUid, 10, 32);
if (!empty($this->options['tmpPath'])) {
if ((is_dir($this->options['tmpPath']) || mkdir($this->options['tmpPath'])) && is_writable($this->options['tmpPath'])) {
$this->tmp = $this->options['tmpPath'];
}
}
if (!$this->tmp && is_writable($this->options['tmbPath'])) {
$this->tmp = $this->options['tmbPath'];
}
if (!$this->tmp && ($tmp = elFinder::getStaticVar('commonTempPath'))) {
$this->tmp = $tmp;
}
if (!empty($this->options['metaCachePath'])) {
if ((is_dir($this->options['metaCachePath']) || mkdir($this->options['metaCachePath'])) && is_writable($this->options['metaCachePath'])) {
$this->metaCache = $this->options['metaCachePath'];
}
}
if (!$this->metaCache && $this->tmp) {
$this->metaCache = $this->tmp;
}
if (!$this->metaCache) {
return $this->setError('Cache dirctory (metaCachePath or tmp) is require.');
}
// setup PDO
if (!$this->options['PDO_DSN']) {
$this->options['PDO_DSN'] = 'sqlite:' . $this->metaCache . DIRECTORY_SEPARATOR . '.elFinder_dropbox_db_' . md5($this->dropboxUid . $this->options['consumerSecret']);
}
// DataBase table name
$this->DB_TableName = $this->options['PDO_DBName'];
// DataBase check or make table
try {
$this->DB = new PDO($this->options['PDO_DSN'], $this->options['PDO_User'], $this->options['PDO_Pass'], $this->options['PDO_Options']);
if (!$this->checkDB()) {
return $this->setError('Can not make DB table');
}
//.........这里部分代码省略.........
示例4: configure
/**
* Set tmp path
*
* @return void
* @author Dmitry (dio) Levashov
**/
protected function configure()
{
parent::configure();
if ($tmp = $this->options['tmpPath']) {
if (!file_exists($tmp)) {
if (@mkdir($tmp)) {
@chmod($tmp, $this->options['tmbPathMode']);
}
}
$this->tmpPath = is_dir($tmp) && is_writable($tmp) ? $tmp : false;
}
if (!$this->tmpPath && ($tmp = elFinder::getStaticVar('commonTempPath'))) {
$this->tmpPath = $tmp;
}
if (!$this->tmpPath && $this->tmbPath && $this->tmbPathWritable) {
$this->tmpPath = $this->tmbPath;
}
$this->mimeDetect = 'internal';
}
示例5: configure
/**
* Configure after successfull mount.
*
* @return void
* @author Dmitry (dio) Levashov
**/
protected function configure()
{
$root = $this->stat($this->root);
// chek thumbnails path
if ($this->options['tmbPath']) {
$this->options['tmbPath'] = strpos($this->options['tmbPath'], DIRECTORY_SEPARATOR) === false ? $this->_abspath($this->options['tmbPath']) : $this->_normpath($this->options['tmbPath']);
}
parent::configure();
// set $this->tmp by options['tmpPath']
$this->tmp = '';
if (!empty($this->options['tmpPath'])) {
if ((is_dir($this->options['tmpPath']) || @mkdir($this->options['tmpPath'], 0755, true)) && is_writable($this->options['tmpPath'])) {
$this->tmp = $this->options['tmpPath'];
}
}
if (!$this->tmp && ($tmp = elFinder::getStaticVar('commonTempPath'))) {
$this->tmp = $tmp;
}
// if no thumbnails url - try detect it
if ($root['read'] && !$this->tmbURL && $this->URL) {
if (strpos($this->tmbPath, $this->root) === 0) {
$this->tmbURL = $this->URL . str_replace(DIRECTORY_SEPARATOR, '/', substr($this->tmbPath, strlen($this->root) + 1));
if (preg_match("|[^/?&=]\$|", $this->tmbURL)) {
$this->tmbURL .= '/';
}
}
}
// check quarantine dir
$this->quarantine = '';
if (!empty($this->options['quarantine'])) {
if (is_dir($this->options['quarantine'])) {
if (is_writable($this->options['quarantine'])) {
$this->quarantine = $this->options['quarantine'];
}
$this->options['quarantine'] = '';
} else {
$this->quarantine = $this->_abspath($this->options['quarantine']);
if (!is_dir($this->quarantine) && !$this->_mkdir($this->root, $this->options['quarantine']) || !is_writable($this->quarantine)) {
$this->options['quarantine'] = $this->quarantine = '';
}
}
}
if (!$this->quarantine) {
if (!$this->tmp) {
$this->archivers['extract'] = array();
$this->disabled[] = 'extract';
} else {
$this->quarantine = $this->tmp;
}
}
if ($this->options['quarantine']) {
$this->attributes[] = array('pattern' => '~^' . preg_quote(DIRECTORY_SEPARATOR . $this->options['quarantine']) . '$~', 'read' => false, 'write' => false, 'locked' => true, 'hidden' => true);
}
}
示例6: init
/**
* Prepare FTP connection
* Connect to remote server and check if credentials are correct, if so, store the connection id in $ftp_conn.
*
* @return bool
*
* @author Dmitry (dio) Levashov
* @author Cem (DiscoFever)
**/
protected function init()
{
if (empty($options['client_id'])) {
if (defined('ELFINDER_GOOGLEDRIVE_CLIENTID') && ELFINDER_GOOGLEDRIVE_CLIENTID) {
$this->options['client_id'] = ELFINDER_GOOGLEDRIVE_CLIENTID;
} else {
return $this->setError('Required option "client_id" is undefined.');
}
}
if (empty($options['client_secret'])) {
if (defined('ELFINDER_GOOGLEDRIVE_CLIENTSECRET') && ELFINDER_GOOGLEDRIVE_CLIENTSECRET) {
$this->options['client_secret'] = ELFINDER_GOOGLEDRIVE_CLIENTSECRET;
} else {
return $this->setError('Required option "client_secret" is undefined.');
}
}
if (!$this->options['access_token'] && !$this->options['refresh_token']) {
return $this->setError('Required option "access_token" or "refresh_token" is undefined.');
}
try {
$aTokenFile = '';
if ($this->options['refresh_token']) {
// permanent mount
$aToken = $this->options['refresh_token'];
$this->options['access_token'] = '';
$tmp = elFinder::getStaticVar('commonTempPath');
if (!$tmp) {
$tmp = $this->getTempPath();
}
if ($tmp) {
$aTokenFile = $tmp . DIRECTORY_SEPARATOR . md5($this->options['client_id'] . $this->options['refresh_token']) . '.gtoken';
if (is_file($aTokenFile)) {
$this->options['access_token'] = json_decode(file_get_contents($aTokenFile), true);
}
}
} else {
// make net mount key for network mount
if (is_array($this->options['access_token'])) {
$aToken = !empty($this->options['access_token']['refresh_token']) ? $this->options['access_token']['refresh_token'] : $this->options['access_token']['access_token'];
} else {
return $this->setError('Required option "access_token" is not Array or empty.');
}
}
$this->netMountKey = md5($aToken . '-' . $this->options['path']);
$errors = [];
if (!$this->service) {
if ($this->options['googleApiClient'] && !class_exists('Google_Client')) {
include_once $this->options['googleApiClient'];
}
if (!class_exists('Google_Client')) {
return $this->setError('Class Google_Client not found.');
}
$this->client = new \Google_Client();
$client = $this->client;
if ($this->options['access_token']) {
$client->setAccessToken($this->options['access_token']);
}
if ($client->isAccessTokenExpired()) {
$client->setClientId($this->options['client_id']);
$client->setClientSecret($this->options['client_secret']);
$access_token = $client->fetchAccessTokenWithRefreshToken($this->options['refresh_token'] ?: null);
$client->setAccessToken($access_token);
if ($aTokenFile) {
file_put_contents($aTokenFile, json_encode($access_token));
} else {
$access_token['refresh_token'] = $this->options['access_token']['refresh_token'];
}
if (!empty($this->options['netkey'])) {
elFinder::$instance->updateNetVolumeOption($this->options['netkey'], 'access_token', $access_token);
}
$this->options['access_token'] = $access_token;
}
$this->service = new \Google_Service_Drive($client);
}
} catch (InvalidArgumentException $e) {
$errors[] = $e->getMessage();
} catch (Google_Service_Exception $e) {
$errors[] = $e->getMessage();
}
if (!$this->service) {
$this->session->remove($this->id . $this->netMountKey);
if ($aTokenFile) {
unlink($aTokenFile);
}
$errors[] = 'Google Drive Service could not be loaded.';
return $this->setError($errors);
}
// normalize root path
if ($this->options['path'] == 'root') {
$this->options['path'] = '/';
}
//.........这里部分代码省略.........
示例7: init
/**
* Prepare FTP connection
* Connect to remote server and check if credentials are correct, if so, store the connection id in $ftp_conn.
*
* @return bool
*
* @author Dmitry (dio) Levashov
* @author Cem (DiscoFever)
**/
protected function init()
{
if (!$this->options['accessToken']) {
return $this->setError('Required option `accessToken` is undefined.');
}
try {
$this->token = json_decode($this->options['accessToken']);
$this->_bd_refreshToken();
} catch (Exception $e) {
$this->token = null;
$this->session->remove('BoxTokens');
return $this->setError($e->getMessage());
}
if (empty($options['netkey'])) {
// make net mount key
$_tokenKey = isset($this->token->data->refresh_token) ? $this->token->data->refresh_token : $this->token->data->access_token;
$this->netMountKey = md5(implode('-', array('box', $this->options['path'], $_tokenKey)));
} else {
$this->netMountKey = $options['netkey'];
}
// normalize root path
if ($this->options['path'] == 'root') {
$this->options['path'] = '/';
}
$this->root = $this->options['path'] = $this->_normpath($this->options['path']);
$this->options['root'] == '' ? $this->options['root'] = 'Box.com' : $this->options['root'];
if (empty($this->options['alias'])) {
list(, $itemId) = $this->_bd_splitPath($this->options['path']);
$this->options['alias'] = $this->options['path'] === '/' ? $this->options['root'] : $this->_bd_query($itemId, $fetch_self = true)->name . '@Box.com';
}
$this->rootName = $this->options['alias'];
$this->tmbPrefix = 'box' . base_convert($this->netMountKey, 10, 32);
if (!empty($this->options['tmpPath'])) {
if ((is_dir($this->options['tmpPath']) || mkdir($this->options['tmpPath'])) && is_writable($this->options['tmpPath'])) {
$this->tmp = $this->options['tmpPath'];
}
}
if (!$this->tmp && is_writable($this->options['tmbPath'])) {
$this->tmp = $this->options['tmbPath'];
}
if (!$this->tmp && ($tmp = elFinder::getStaticVar('commonTempPath'))) {
$this->tmp = $tmp;
}
// This driver dose not support `syncChkAsTs`
$this->options['syncChkAsTs'] = false;
// 'lsPlSleep' minmum 10 sec
$this->options['lsPlSleep'] = max(10, $this->options['lsPlSleep']);
return true;
}
示例8: init
/**
* Prepare FTP connection
* Connect to remote server and check if credentials are correct, if so, store the connection id in $ftp_conn.
*
* @return bool
*
* @author Dmitry (dio) Levashov
* @author Cem (DiscoFever)
**/
protected function init()
{
if (!$this->options['accessToken']) {
return $this->setError('Required option `accessToken` is undefined.');
}
try {
$this->token = json_decode($this->options['accessToken']);
$this->_od_refreshToken();
} catch (Exception $e) {
$this->token = null;
$this->session->remove('OneDriveTokens');
return $this->setError($e->getMessage());
}
if (empty($options['netkey'])) {
// make net mount key
$_tokenKey = isset($this->token->data->refresh_token) ? $this->token->data->refresh_token : $this->token->data->access_token;
$this->netMountKey = md5(implode('-', array('box', $this->options['path'], $_tokenKey)));
} else {
$this->netMountKey = $options['netkey'];
}
// normalize root path
if ($this->options['path'] == 'root') {
$this->options['path'] = '/';
}
$this->root = $this->options['path'] = $this->_normpath($this->options['path']);
$this->options['root'] == '' ? $this->options['root'] = 'OneDrive.com' : $this->options['root'];
if (empty($this->options['alias'])) {
$this->options['alias'] = $this->options['path'] === '/' ? $this->options['root'] : $this->_od_query(basename($this->options['path']), $fetch_self = true)->name . '@OneDrive';
}
$this->rootName = $this->options['alias'];
$this->tmbPrefix = 'onedrive' . base_convert($this->netMountKey, 10, 32);
if (!empty($this->options['tmpPath'])) {
if ((is_dir($this->options['tmpPath']) || mkdir($this->options['tmpPath'])) && is_writable($this->options['tmpPath'])) {
$this->tmp = $this->options['tmpPath'];
}
}
if (!$this->tmp && is_writable($this->options['tmbPath'])) {
$this->tmp = $this->options['tmbPath'];
}
if (!$this->tmp && ($tmp = elFinder::getStaticVar('commonTempPath'))) {
$this->tmp = $tmp;
}
// This driver dose not support `syncChkAsTs`
$this->options['syncChkAsTs'] = false;
// 'lsPlSleep' minmum 10 sec
$this->options['lsPlSleep'] = max(10, $this->options['lsPlSleep']);
$this->queryOptions = array('query' => array('select' => 'id,name,lastModifiedDateTime,file,folder,size,image'));
if ($this->options['useApiThumbnail']) {
$this->options['tmbURL'] = 'https://';
$this->queryOptions['query']['expand'] = 'thumbnails(select=small)';
}
return true;
}