Edit File by line

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93

Warning: Undefined array key "page_file_edit_line" in /home/sportsfever/public_html/filemanger/edit_text_line.php on line 32
/home/sportsfe.../httpdocs/wp-conte.../plugins/wp-file-.../lib/php
File: elFinderVolumeDriver.class.php
$reqs = explode('/', dirname($req));
[1500] Fix | Delete
$uri = join('/', array_slice($reqs, 0, count($reqs) - 1)) . substr($this->tmpLinkPath, strlen($cur));
[1501] Fix | Delete
$https = (isset($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) !== 'off');
[1502] Fix | Delete
$this->tmpLinkUrl = ($https ? 'https://' : 'http://')
[1503] Fix | Delete
. $_SERVER['SERVER_NAME'] // host
[1504] Fix | Delete
. (((!$https && $_SERVER['SERVER_PORT'] == 80) || ($https && $_SERVER['SERVER_PORT'] == 443)) ? '' : (':' . $_SERVER['SERVER_PORT'])) // port
[1505] Fix | Delete
. $uri;
[1506] Fix | Delete
if (!elFinder::$tmpLinkUrl) {
[1507] Fix | Delete
elFinder::$tmpLinkUrl = $this->tmpLinkUrl;
[1508] Fix | Delete
}
[1509] Fix | Delete
}
[1510] Fix | Delete
[1511] Fix | Delete
// remove last '/'
[1512] Fix | Delete
if ($this->tmpLinkPath) {
[1513] Fix | Delete
$this->tmpLinkPath = rtrim($this->tmpLinkPath, '/');
[1514] Fix | Delete
}
[1515] Fix | Delete
if ($this->tmpLinkUrl) {
[1516] Fix | Delete
$this->tmpLinkUrl = rtrim($this->tmpLinkUrl, '/');
[1517] Fix | Delete
}
[1518] Fix | Delete
[1519] Fix | Delete
// to update options cache
[1520] Fix | Delete
if (isset($this->sessionCache['rootstat'])) {
[1521] Fix | Delete
unset($this->sessionCache['rootstat'][$this->getRootstatCachekey()]);
[1522] Fix | Delete
}
[1523] Fix | Delete
$this->updateCache($this->root, $root);
[1524] Fix | Delete
[1525] Fix | Delete
return $this->mounted = true;
[1526] Fix | Delete
}
[1527] Fix | Delete
[1528] Fix | Delete
/**
[1529] Fix | Delete
* Some "unmount" stuffs - may be required by virtual fs
[1530] Fix | Delete
*
[1531] Fix | Delete
* @return void
[1532] Fix | Delete
* @author Dmitry (dio) Levashov
[1533] Fix | Delete
**/
[1534] Fix | Delete
public function umount()
[1535] Fix | Delete
{
[1536] Fix | Delete
}
[1537] Fix | Delete
[1538] Fix | Delete
/**
[1539] Fix | Delete
* Remove session cache of this volume
[1540] Fix | Delete
*/
[1541] Fix | Delete
public function clearSessionCache()
[1542] Fix | Delete
{
[1543] Fix | Delete
$this->sessionCache = array();
[1544] Fix | Delete
}
[1545] Fix | Delete
[1546] Fix | Delete
/**
[1547] Fix | Delete
* Return error message from last failed action
[1548] Fix | Delete
*
[1549] Fix | Delete
* @return array
[1550] Fix | Delete
* @author Dmitry (dio) Levashov
[1551] Fix | Delete
**/
[1552] Fix | Delete
public function error()
[1553] Fix | Delete
{
[1554] Fix | Delete
return $this->error;
[1555] Fix | Delete
}
[1556] Fix | Delete
[1557] Fix | Delete
/**
[1558] Fix | Delete
* Return is uploadable that given file name
[1559] Fix | Delete
*
[1560] Fix | Delete
* @param string $name file name
[1561] Fix | Delete
* @param bool $allowUnknown
[1562] Fix | Delete
*
[1563] Fix | Delete
* @return bool
[1564] Fix | Delete
* @author Naoki Sawada
[1565] Fix | Delete
**/
[1566] Fix | Delete
public function isUploadableByName($name, $allowUnknown = false)
[1567] Fix | Delete
{
[1568] Fix | Delete
$mimeByName = $this->mimetype($name, true);
[1569] Fix | Delete
return (($allowUnknown && $mimeByName === 'unknown') || $this->allowPutMime($mimeByName));
[1570] Fix | Delete
}
[1571] Fix | Delete
[1572] Fix | Delete
/**
[1573] Fix | Delete
* Return Extention/MIME Table (elFinderVolumeDriver::$mimetypes)
[1574] Fix | Delete
*
[1575] Fix | Delete
* @return array
[1576] Fix | Delete
* @author Naoki Sawada
[1577] Fix | Delete
*/
[1578] Fix | Delete
public function getMimeTable()
[1579] Fix | Delete
{
[1580] Fix | Delete
// load mime.types
[1581] Fix | Delete
if (!elFinderVolumeDriver::$mimetypesLoaded) {
[1582] Fix | Delete
elFinderVolumeDriver::loadMimeTypes();
[1583] Fix | Delete
}
[1584] Fix | Delete
return elFinderVolumeDriver::$mimetypes;
[1585] Fix | Delete
}
[1586] Fix | Delete
[1587] Fix | Delete
/**
[1588] Fix | Delete
* Return file extention detected by MIME type
[1589] Fix | Delete
*
[1590] Fix | Delete
* @param string $mime MIME type
[1591] Fix | Delete
* @param string $suffix Additional suffix
[1592] Fix | Delete
*
[1593] Fix | Delete
* @return string
[1594] Fix | Delete
* @author Naoki Sawada
[1595] Fix | Delete
*/
[1596] Fix | Delete
public function getExtentionByMime($mime, $suffix = '')
[1597] Fix | Delete
{
[1598] Fix | Delete
static $extTable = null;
[1599] Fix | Delete
[1600] Fix | Delete
if (is_null($extTable)) {
[1601] Fix | Delete
$extTable = array_flip(array_unique($this->getMimeTable()));
[1602] Fix | Delete
foreach ($this->options['mimeMap'] as $pair => $_mime) {
[1603] Fix | Delete
list($ext) = explode(':', $pair);
[1604] Fix | Delete
if ($ext !== '*' && !isset($extTable[$_mime])) {
[1605] Fix | Delete
$extTable[$_mime] = $ext;
[1606] Fix | Delete
}
[1607] Fix | Delete
}
[1608] Fix | Delete
}
[1609] Fix | Delete
[1610] Fix | Delete
if ($mime && isset($extTable[$mime])) {
[1611] Fix | Delete
return $suffix ? ($extTable[$mime] . $suffix) : $extTable[$mime];
[1612] Fix | Delete
}
[1613] Fix | Delete
return '';
[1614] Fix | Delete
}
[1615] Fix | Delete
[1616] Fix | Delete
/**
[1617] Fix | Delete
* Set mimetypes allowed to display to client
[1618] Fix | Delete
*
[1619] Fix | Delete
* @param array $mimes
[1620] Fix | Delete
*
[1621] Fix | Delete
* @return void
[1622] Fix | Delete
* @author Dmitry (dio) Levashov
[1623] Fix | Delete
**/
[1624] Fix | Delete
public function setMimesFilter($mimes)
[1625] Fix | Delete
{
[1626] Fix | Delete
if (is_array($mimes)) {
[1627] Fix | Delete
$this->onlyMimes = $mimes;
[1628] Fix | Delete
}
[1629] Fix | Delete
}
[1630] Fix | Delete
[1631] Fix | Delete
/**
[1632] Fix | Delete
* Return root folder hash
[1633] Fix | Delete
*
[1634] Fix | Delete
* @return string
[1635] Fix | Delete
* @author Dmitry (dio) Levashov
[1636] Fix | Delete
**/
[1637] Fix | Delete
public function root()
[1638] Fix | Delete
{
[1639] Fix | Delete
return $this->encode($this->root);
[1640] Fix | Delete
}
[1641] Fix | Delete
[1642] Fix | Delete
/**
[1643] Fix | Delete
* Return root path
[1644] Fix | Delete
*
[1645] Fix | Delete
* @return string
[1646] Fix | Delete
* @author Naoki Sawada
[1647] Fix | Delete
**/
[1648] Fix | Delete
public function getRootPath()
[1649] Fix | Delete
{
[1650] Fix | Delete
return $this->root;
[1651] Fix | Delete
}
[1652] Fix | Delete
[1653] Fix | Delete
/**
[1654] Fix | Delete
* Return target path hash
[1655] Fix | Delete
*
[1656] Fix | Delete
* @param string $path
[1657] Fix | Delete
* @param string $name
[1658] Fix | Delete
*
[1659] Fix | Delete
* @author Naoki Sawada
[1660] Fix | Delete
* @return string
[1661] Fix | Delete
*/
[1662] Fix | Delete
public function getHash($path, $name = '')
[1663] Fix | Delete
{
[1664] Fix | Delete
if ($name !== '') {
[1665] Fix | Delete
$path = $this->joinPathCE($path, $name);
[1666] Fix | Delete
}
[1667] Fix | Delete
return $this->encode($path);
[1668] Fix | Delete
}
[1669] Fix | Delete
[1670] Fix | Delete
/**
[1671] Fix | Delete
* Return decoded path of target hash
[1672] Fix | Delete
* This method do not check the stat of target
[1673] Fix | Delete
* Use method `realpath()` to do check of the stat of target
[1674] Fix | Delete
*
[1675] Fix | Delete
* @param string $hash
[1676] Fix | Delete
*
[1677] Fix | Delete
* @author Naoki Sawada
[1678] Fix | Delete
* @return string
[1679] Fix | Delete
*/
[1680] Fix | Delete
public function getPath($hash)
[1681] Fix | Delete
{
[1682] Fix | Delete
return $this->decode($hash);
[1683] Fix | Delete
}
[1684] Fix | Delete
[1685] Fix | Delete
/**
[1686] Fix | Delete
* Return root or startPath hash
[1687] Fix | Delete
*
[1688] Fix | Delete
* @return string
[1689] Fix | Delete
* @author Dmitry (dio) Levashov
[1690] Fix | Delete
**/
[1691] Fix | Delete
public function defaultPath()
[1692] Fix | Delete
{
[1693] Fix | Delete
return $this->encode($this->startPath ? $this->startPath : $this->root);
[1694] Fix | Delete
}
[1695] Fix | Delete
[1696] Fix | Delete
/**
[1697] Fix | Delete
* Return volume options required by client:
[1698] Fix | Delete
*
[1699] Fix | Delete
* @param $hash
[1700] Fix | Delete
*
[1701] Fix | Delete
* @return array
[1702] Fix | Delete
* @author Dmitry (dio) Levashov
[1703] Fix | Delete
*/
[1704] Fix | Delete
public function options($hash)
[1705] Fix | Delete
{
[1706] Fix | Delete
$create = $createext = array();
[1707] Fix | Delete
if (isset($this->archivers['create']) && is_array($this->archivers['create'])) {
[1708] Fix | Delete
foreach ($this->archivers['create'] as $m => $v) {
[1709] Fix | Delete
$create[] = $m;
[1710] Fix | Delete
$createext[$m] = $v['ext'];
[1711] Fix | Delete
}
[1712] Fix | Delete
}
[1713] Fix | Delete
$opts = array(
[1714] Fix | Delete
'path' => $hash ? $this->path($hash) : '',
[1715] Fix | Delete
'url' => $this->URL,
[1716] Fix | Delete
'tmbUrl' => (!$this->imgLib && $this->options['tmbFbSelf']) ? 'self' : $this->tmbURL,
[1717] Fix | Delete
'disabled' => $this->disabled,
[1718] Fix | Delete
'separator' => $this->separator,
[1719] Fix | Delete
'copyOverwrite' => intval($this->options['copyOverwrite']),
[1720] Fix | Delete
'uploadOverwrite' => intval($this->options['uploadOverwrite']),
[1721] Fix | Delete
'uploadMaxSize' => intval($this->uploadMaxSize),
[1722] Fix | Delete
'uploadMaxConn' => intval($this->options['uploadMaxConn']),
[1723] Fix | Delete
'uploadMime' => array(
[1724] Fix | Delete
'firstOrder' => isset($this->uploadOrder[0]) ? $this->uploadOrder[0] : 'deny',
[1725] Fix | Delete
'allow' => $this->uploadAllow,
[1726] Fix | Delete
'deny' => $this->uploadDeny
[1727] Fix | Delete
),
[1728] Fix | Delete
'dispInlineRegex' => $this->options['dispInlineRegex'],
[1729] Fix | Delete
'jpgQuality' => intval($this->options['jpgQuality']),
[1730] Fix | Delete
'archivers' => array(
[1731] Fix | Delete
'create' => $create,
[1732] Fix | Delete
'extract' => isset($this->archivers['extract']) && is_array($this->archivers['extract']) ? array_keys($this->archivers['extract']) : array(),
[1733] Fix | Delete
'createext' => $createext
[1734] Fix | Delete
),
[1735] Fix | Delete
'uiCmdMap' => (isset($this->options['uiCmdMap']) && is_array($this->options['uiCmdMap'])) ? $this->options['uiCmdMap'] : array(),
[1736] Fix | Delete
'syncChkAsTs' => intval($this->options['syncChkAsTs']),
[1737] Fix | Delete
'syncMinMs' => intval($this->options['syncMinMs']),
[1738] Fix | Delete
'i18nFolderName' => intval($this->options['i18nFolderName']),
[1739] Fix | Delete
'tmbCrop' => intval($this->options['tmbCrop']),
[1740] Fix | Delete
'tmbReqCustomData' => (bool)$this->options['tmbReqCustomData'],
[1741] Fix | Delete
'substituteImg' => (bool)$this->options['substituteImg'],
[1742] Fix | Delete
'onetimeUrl' => (bool)$this->options['onetimeUrl'],
[1743] Fix | Delete
);
[1744] Fix | Delete
if (!empty($this->options['trashHash'])) {
[1745] Fix | Delete
$opts['trashHash'] = $this->options['trashHash'];
[1746] Fix | Delete
}
[1747] Fix | Delete
if ($hash === null) {
[1748] Fix | Delete
// call from getRootStatExtra()
[1749] Fix | Delete
if (!empty($this->options['icon'])) {
[1750] Fix | Delete
$opts['icon'] = $this->options['icon'];
[1751] Fix | Delete
}
[1752] Fix | Delete
if (!empty($this->options['rootCssClass'])) {
[1753] Fix | Delete
$opts['csscls'] = $this->options['rootCssClass'];
[1754] Fix | Delete
}
[1755] Fix | Delete
if (isset($this->options['netkey'])) {
[1756] Fix | Delete
$opts['netkey'] = $this->options['netkey'];
[1757] Fix | Delete
}
[1758] Fix | Delete
}
[1759] Fix | Delete
return $opts;
[1760] Fix | Delete
}
[1761] Fix | Delete
[1762] Fix | Delete
/**
[1763] Fix | Delete
* Get option value of this volume
[1764] Fix | Delete
*
[1765] Fix | Delete
* @param string $name target option name
[1766] Fix | Delete
*
[1767] Fix | Delete
* @return NULL|mixed target option value
[1768] Fix | Delete
* @author Naoki Sawada
[1769] Fix | Delete
*/
[1770] Fix | Delete
public function getOption($name)
[1771] Fix | Delete
{
[1772] Fix | Delete
return isset($this->options[$name]) ? $this->options[$name] : null;
[1773] Fix | Delete
}
[1774] Fix | Delete
[1775] Fix | Delete
/**
[1776] Fix | Delete
* Get plugin values of this options
[1777] Fix | Delete
*
[1778] Fix | Delete
* @param string $name Plugin name
[1779] Fix | Delete
*
[1780] Fix | Delete
* @return NULL|array Plugin values
[1781] Fix | Delete
* @author Naoki Sawada
[1782] Fix | Delete
*/
[1783] Fix | Delete
public function getOptionsPlugin($name = '')
[1784] Fix | Delete
{
[1785] Fix | Delete
if ($name) {
[1786] Fix | Delete
return isset($this->options['plugin'][$name]) ? $this->options['plugin'][$name] : array();
[1787] Fix | Delete
} else {
[1788] Fix | Delete
return $this->options['plugin'];
[1789] Fix | Delete
}
[1790] Fix | Delete
}
[1791] Fix | Delete
[1792] Fix | Delete
/**
[1793] Fix | Delete
* Return true if command disabled in options
[1794] Fix | Delete
*
[1795] Fix | Delete
* @param string $cmd command name
[1796] Fix | Delete
*
[1797] Fix | Delete
* @return bool
[1798] Fix | Delete
* @author Dmitry (dio) Levashov
[1799] Fix | Delete
**/
[1800] Fix | Delete
public function commandDisabled($cmd)
[1801] Fix | Delete
{
[1802] Fix | Delete
return in_array($cmd, $this->disabled);
[1803] Fix | Delete
}
[1804] Fix | Delete
[1805] Fix | Delete
/**
[1806] Fix | Delete
* Return true if mime is required mimes list
[1807] Fix | Delete
*
[1808] Fix | Delete
* @param string $mime mime type to check
[1809] Fix | Delete
* @param array $mimes allowed mime types list or not set to use client mimes list
[1810] Fix | Delete
* @param bool|null $empty what to return on empty list
[1811] Fix | Delete
*
[1812] Fix | Delete
* @return bool|null
[1813] Fix | Delete
* @author Dmitry (dio) Levashov
[1814] Fix | Delete
* @author Troex Nevelin
[1815] Fix | Delete
**/
[1816] Fix | Delete
public function mimeAccepted($mime, $mimes = null, $empty = true)
[1817] Fix | Delete
{
[1818] Fix | Delete
$mimes = is_array($mimes) ? $mimes : $this->onlyMimes;
[1819] Fix | Delete
if (empty($mimes)) {
[1820] Fix | Delete
return $empty;
[1821] Fix | Delete
}
[1822] Fix | Delete
return $mime == 'directory'
[1823] Fix | Delete
|| in_array('all', $mimes)
[1824] Fix | Delete
|| in_array('All', $mimes)
[1825] Fix | Delete
|| in_array($mime, $mimes)
[1826] Fix | Delete
|| in_array(substr($mime, 0, strpos($mime, '/')), $mimes);
[1827] Fix | Delete
}
[1828] Fix | Delete
[1829] Fix | Delete
/**
[1830] Fix | Delete
* Return true if voume is readable.
[1831] Fix | Delete
*
[1832] Fix | Delete
* @return bool
[1833] Fix | Delete
* @author Dmitry (dio) Levashov
[1834] Fix | Delete
**/
[1835] Fix | Delete
public function isReadable()
[1836] Fix | Delete
{
[1837] Fix | Delete
$stat = $this->stat($this->root);
[1838] Fix | Delete
return $stat['read'];
[1839] Fix | Delete
}
[1840] Fix | Delete
[1841] Fix | Delete
/**
[1842] Fix | Delete
* Return true if copy from this volume allowed
[1843] Fix | Delete
*
[1844] Fix | Delete
* @return bool
[1845] Fix | Delete
* @author Dmitry (dio) Levashov
[1846] Fix | Delete
**/
[1847] Fix | Delete
public function copyFromAllowed()
[1848] Fix | Delete
{
[1849] Fix | Delete
return !!$this->options['copyFrom'];
[1850] Fix | Delete
}
[1851] Fix | Delete
[1852] Fix | Delete
/**
[1853] Fix | Delete
* Return file path related to root with convert encoging
[1854] Fix | Delete
*
[1855] Fix | Delete
* @param string $hash file hash
[1856] Fix | Delete
*
[1857] Fix | Delete
* @return string
[1858] Fix | Delete
* @author Dmitry (dio) Levashov
[1859] Fix | Delete
**/
[1860] Fix | Delete
public function path($hash)
[1861] Fix | Delete
{
[1862] Fix | Delete
return $this->convEncOut($this->_path($this->convEncIn($this->decode($hash))));
[1863] Fix | Delete
}
[1864] Fix | Delete
[1865] Fix | Delete
/**
[1866] Fix | Delete
* Return file real path if file exists
[1867] Fix | Delete
*
[1868] Fix | Delete
* @param string $hash file hash
[1869] Fix | Delete
*
[1870] Fix | Delete
* @return string | false
[1871] Fix | Delete
* @author Dmitry (dio) Levashov
[1872] Fix | Delete
**/
[1873] Fix | Delete
public function realpath($hash)
[1874] Fix | Delete
{
[1875] Fix | Delete
$path = $this->decode($hash);
[1876] Fix | Delete
return $this->stat($path) ? $path : false;
[1877] Fix | Delete
}
[1878] Fix | Delete
[1879] Fix | Delete
/**
[1880] Fix | Delete
* Return list of moved/overwrited files
[1881] Fix | Delete
*
[1882] Fix | Delete
* @return array
[1883] Fix | Delete
* @author Dmitry (dio) Levashov
[1884] Fix | Delete
**/
[1885] Fix | Delete
public function removed()
[1886] Fix | Delete
{
[1887] Fix | Delete
if ($this->removed) {
[1888] Fix | Delete
$unsetSubdir = isset($this->sessionCache['subdirs']) ? true : false;
[1889] Fix | Delete
foreach ($this->removed as $item) {
[1890] Fix | Delete
if ($item['mime'] === 'directory') {
[1891] Fix | Delete
$path = $this->decode($item['hash']);
[1892] Fix | Delete
if ($unsetSubdir) {
[1893] Fix | Delete
unset($this->sessionCache['subdirs'][$path]);
[1894] Fix | Delete
}
[1895] Fix | Delete
if ($item['phash'] !== '') {
[1896] Fix | Delete
$parent = $this->decode($item['phash']);
[1897] Fix | Delete
unset($this->cache[$parent]);
[1898] Fix | Delete
if ($this->root === $parent) {
[1899] Fix | Delete
$this->sessionCache['rootstat'] = array();
[1900] Fix | Delete
}
[1901] Fix | Delete
if ($unsetSubdir) {
[1902] Fix | Delete
unset($this->sessionCache['subdirs'][$parent]);
[1903] Fix | Delete
}
[1904] Fix | Delete
}
[1905] Fix | Delete
}
[1906] Fix | Delete
}
[1907] Fix | Delete
$this->removed = array_values($this->removed);
[1908] Fix | Delete
}
[1909] Fix | Delete
return $this->removed;
[1910] Fix | Delete
}
[1911] Fix | Delete
[1912] Fix | Delete
/**
[1913] Fix | Delete
* Return list of added files
[1914] Fix | Delete
*
[1915] Fix | Delete
* @deprecated
[1916] Fix | Delete
* @return array
[1917] Fix | Delete
* @author Naoki Sawada
[1918] Fix | Delete
**/
[1919] Fix | Delete
public function added()
[1920] Fix | Delete
{
[1921] Fix | Delete
return $this->added;
[1922] Fix | Delete
}
[1923] Fix | Delete
[1924] Fix | Delete
/**
[1925] Fix | Delete
* Clean removed files list
[1926] Fix | Delete
*
[1927] Fix | Delete
* @return void
[1928] Fix | Delete
* @author Dmitry (dio) Levashov
[1929] Fix | Delete
**/
[1930] Fix | Delete
public function resetRemoved()
[1931] Fix | Delete
{
[1932] Fix | Delete
$this->resetResultStat();
[1933] Fix | Delete
}
[1934] Fix | Delete
[1935] Fix | Delete
/**
[1936] Fix | Delete
* Clean added/removed files list
[1937] Fix | Delete
*
[1938] Fix | Delete
* @return void
[1939] Fix | Delete
**/
[1940] Fix | Delete
public function resetResultStat()
[1941] Fix | Delete
{
[1942] Fix | Delete
$this->removed = array();
[1943] Fix | Delete
$this->added = array();
[1944] Fix | Delete
}
[1945] Fix | Delete
[1946] Fix | Delete
/**
[1947] Fix | Delete
* Return file/dir hash or first founded child hash with required attr == $val
[1948] Fix | Delete
*
[1949] Fix | Delete
* @param string $hash file hash
[1950] Fix | Delete
* @param string $attr attribute name
[1951] Fix | Delete
* @param bool $val attribute value
[1952] Fix | Delete
*
[1953] Fix | Delete
* @return string|false
[1954] Fix | Delete
* @author Dmitry (dio) Levashov
[1955] Fix | Delete
**/
[1956] Fix | Delete
public function closest($hash, $attr, $val)
[1957] Fix | Delete
{
[1958] Fix | Delete
return ($path = $this->closestByAttr($this->decode($hash), $attr, $val)) ? $this->encode($path) : false;
[1959] Fix | Delete
}
[1960] Fix | Delete
[1961] Fix | Delete
/**
[1962] Fix | Delete
* Return file info or false on error
[1963] Fix | Delete
*
[1964] Fix | Delete
* @param string $hash file hash
[1965] Fix | Delete
*
[1966] Fix | Delete
* @return array|false
[1967] Fix | Delete
* @internal param bool $realpath add realpath field to file info
[1968] Fix | Delete
* @author Dmitry (dio) Levashov
[1969] Fix | Delete
*/
[1970] Fix | Delete
public function file($hash)
[1971] Fix | Delete
{
[1972] Fix | Delete
$file = $this->stat($this->decode($hash));
[1973] Fix | Delete
[1974] Fix | Delete
return ($file) ? $file : $this->setError(elFinder::ERROR_FILE_NOT_FOUND);
[1975] Fix | Delete
}
[1976] Fix | Delete
[1977] Fix | Delete
/**
[1978] Fix | Delete
* Return folder info
[1979] Fix | Delete
*
[1980] Fix | Delete
* @param string $hash folder hash
[1981] Fix | Delete
* @param bool $resolveLink
[1982] Fix | Delete
*
[1983] Fix | Delete
* @return array|false
[1984] Fix | Delete
* @internal param bool $hidden return hidden file info
[1985] Fix | Delete
* @author Dmitry (dio) Levashov
[1986] Fix | Delete
*/
[1987] Fix | Delete
public function dir($hash, $resolveLink = false)
[1988] Fix | Delete
{
[1989] Fix | Delete
if (($dir = $this->file($hash)) == false) {
[1990] Fix | Delete
return $this->setError(elFinder::ERROR_DIR_NOT_FOUND);
[1991] Fix | Delete
}
[1992] Fix | Delete
[1993] Fix | Delete
if ($resolveLink && !empty($dir['thash'])) {
[1994] Fix | Delete
$dir = $this->file($dir['thash']);
[1995] Fix | Delete
}
[1996] Fix | Delete
[1997] Fix | Delete
return $dir && $dir['mime'] == 'directory' && empty($dir['hidden'])
[1998] Fix | Delete
? $dir
[1999] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function