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: elFinder.class.php
unset($this->listeners[$cmd][$i]);
[1000] Fix | Delete
return $this;
[1001] Fix | Delete
}
[1002] Fix | Delete
}
[1003] Fix | Delete
}
[1004] Fix | Delete
return $this;
[1005] Fix | Delete
}
[1006] Fix | Delete
[1007] Fix | Delete
/**
[1008] Fix | Delete
* Trigger binded functions
[1009] Fix | Delete
*
[1010] Fix | Delete
* @param string $cmd binded command name
[1011] Fix | Delete
* @param array $vars variables to pass to listeners
[1012] Fix | Delete
* @param array $errors array into which the error is written
[1013] Fix | Delete
*/
[1014] Fix | Delete
public function trigger($cmd, $vars, &$errors)
[1015] Fix | Delete
{
[1016] Fix | Delete
if (!empty($this->listeners[$cmd])) {
[1017] Fix | Delete
foreach ($this->listeners[$cmd] as $handler) {
[1018] Fix | Delete
$_res = call_user_func_array($handler, $vars);
[1019] Fix | Delete
if ($_res && is_array($_res)) {
[1020] Fix | Delete
$_err = !empty($_res['error'])? $_res['error'] : (!empty($_res['warning'])? $_res['warning'] : null);
[1021] Fix | Delete
if ($_err) {
[1022] Fix | Delete
if (is_array($_err)) {
[1023] Fix | Delete
$errors = array_merge($errors, $_err);
[1024] Fix | Delete
} else {
[1025] Fix | Delete
$errors[] = (string)$_err;
[1026] Fix | Delete
}
[1027] Fix | Delete
if ($_res['error']) {
[1028] Fix | Delete
throw new elFinderTriggerException();
[1029] Fix | Delete
}
[1030] Fix | Delete
}
[1031] Fix | Delete
}
[1032] Fix | Delete
}
[1033] Fix | Delete
}
[1034] Fix | Delete
}
[1035] Fix | Delete
[1036] Fix | Delete
/**
[1037] Fix | Delete
* Return true if command exists
[1038] Fix | Delete
*
[1039] Fix | Delete
* @param string command name
[1040] Fix | Delete
*
[1041] Fix | Delete
* @return bool
[1042] Fix | Delete
* @author Dmitry (dio) Levashov
[1043] Fix | Delete
**/
[1044] Fix | Delete
public function commandExists($cmd)
[1045] Fix | Delete
{
[1046] Fix | Delete
return $this->loaded && isset($this->commands[$cmd]) && method_exists($this, $cmd);
[1047] Fix | Delete
}
[1048] Fix | Delete
[1049] Fix | Delete
/**
[1050] Fix | Delete
* Return root - file's owner (public func of volume())
[1051] Fix | Delete
*
[1052] Fix | Delete
* @param string file hash
[1053] Fix | Delete
*
[1054] Fix | Delete
* @return elFinderVolumeDriver
[1055] Fix | Delete
* @author Naoki Sawada
[1056] Fix | Delete
*/
[1057] Fix | Delete
public function getVolume($hash)
[1058] Fix | Delete
{
[1059] Fix | Delete
return $this->volume($hash);
[1060] Fix | Delete
}
[1061] Fix | Delete
[1062] Fix | Delete
/**
[1063] Fix | Delete
* Return command required arguments info
[1064] Fix | Delete
*
[1065] Fix | Delete
* @param string command name
[1066] Fix | Delete
*
[1067] Fix | Delete
* @return array
[1068] Fix | Delete
* @author Dmitry (dio) Levashov
[1069] Fix | Delete
**/
[1070] Fix | Delete
public function commandArgsList($cmd)
[1071] Fix | Delete
{
[1072] Fix | Delete
if ($this->commandExists($cmd)) {
[1073] Fix | Delete
$list = $this->commands[$cmd];
[1074] Fix | Delete
$list['reqid'] = false;
[1075] Fix | Delete
} else {
[1076] Fix | Delete
$list = array();
[1077] Fix | Delete
}
[1078] Fix | Delete
return $list;
[1079] Fix | Delete
}
[1080] Fix | Delete
[1081] Fix | Delete
private function session_expires()
[1082] Fix | Delete
{
[1083] Fix | Delete
[1084] Fix | Delete
if (!$last = $this->session->get(':LAST_ACTIVITY')) {
[1085] Fix | Delete
$this->session->set(':LAST_ACTIVITY', time());
[1086] Fix | Delete
return false;
[1087] Fix | Delete
}
[1088] Fix | Delete
[1089] Fix | Delete
if (($this->timeout > 0) && (time() - $last > $this->timeout)) {
[1090] Fix | Delete
return true;
[1091] Fix | Delete
}
[1092] Fix | Delete
[1093] Fix | Delete
$this->session->set(':LAST_ACTIVITY', time());
[1094] Fix | Delete
return false;
[1095] Fix | Delete
}
[1096] Fix | Delete
[1097] Fix | Delete
/**
[1098] Fix | Delete
* Exec command and return result
[1099] Fix | Delete
*
[1100] Fix | Delete
* @param string $cmd command name
[1101] Fix | Delete
* @param array $args command arguments
[1102] Fix | Delete
*
[1103] Fix | Delete
* @return array
[1104] Fix | Delete
* @throws elFinderAbortException|Exception
[1105] Fix | Delete
* @author Dmitry (dio) Levashov
[1106] Fix | Delete
**/
[1107] Fix | Delete
public function exec($cmd, $args)
[1108] Fix | Delete
{
[1109] Fix | Delete
// set error handler of WARNING, NOTICE
[1110] Fix | Delete
set_error_handler('elFinder::phpErrorHandler', E_WARNING | E_NOTICE | E_USER_WARNING | E_USER_NOTICE);
[1111] Fix | Delete
[1112] Fix | Delete
// set current request args
[1113] Fix | Delete
self::$currentArgs = $args;
[1114] Fix | Delete
[1115] Fix | Delete
if (!$this->loaded) {
[1116] Fix | Delete
return array('error' => $this->error(self::ERROR_CONF, self::ERROR_CONF_NO_VOL));
[1117] Fix | Delete
}
[1118] Fix | Delete
[1119] Fix | Delete
if ($this->session_expires()) {
[1120] Fix | Delete
return array('error' => $this->error(self::ERROR_SESSION_EXPIRES));
[1121] Fix | Delete
}
[1122] Fix | Delete
[1123] Fix | Delete
if (!$this->commandExists($cmd)) {
[1124] Fix | Delete
return array('error' => $this->error(self::ERROR_UNKNOWN_CMD));
[1125] Fix | Delete
}
[1126] Fix | Delete
[1127] Fix | Delete
// check request id
[1128] Fix | Delete
$args['reqid'] = preg_replace('[^0-9a-fA-F]', '', !empty($args['reqid']) ? $args['reqid'] : (!empty($_SERVER['HTTP_X_ELFINDERREQID']) ? $_SERVER['HTTP_X_ELFINDERREQID'] : ''));
[1129] Fix | Delete
[1130] Fix | Delete
// to abort this request
[1131] Fix | Delete
if ($cmd === 'abort') {
[1132] Fix | Delete
$this->abort($args);
[1133] Fix | Delete
return array('error' => 0);
[1134] Fix | Delete
}
[1135] Fix | Delete
[1136] Fix | Delete
// make flag file and set self::$abortCheckFile
[1137] Fix | Delete
if ($args['reqid']) {
[1138] Fix | Delete
$this->abort(array('makeFile' => $args['reqid']));
[1139] Fix | Delete
}
[1140] Fix | Delete
[1141] Fix | Delete
if (!empty($args['mimes']) && is_array($args['mimes'])) {
[1142] Fix | Delete
foreach ($this->volumes as $id => $v) {
[1143] Fix | Delete
$this->volumes[$id]->setMimesFilter($args['mimes']);
[1144] Fix | Delete
}
[1145] Fix | Delete
}
[1146] Fix | Delete
[1147] Fix | Delete
// regist shutdown function as fallback
[1148] Fix | Delete
register_shutdown_function(array($this, 'itemAutoUnlock'));
[1149] Fix | Delete
[1150] Fix | Delete
// detect destination dirHash and volume
[1151] Fix | Delete
$dstVolume = false;
[1152] Fix | Delete
$dst = !empty($args['target']) ? $args['target'] : (!empty($args['dst']) ? $args['dst'] : '');
[1153] Fix | Delete
if ($dst) {
[1154] Fix | Delete
$dstVolume = $this->volume($dst);
[1155] Fix | Delete
} else if (isset($args['targets']) && is_array($args['targets']) && isset($args['targets'][0])) {
[1156] Fix | Delete
$dst = $args['targets'][0];
[1157] Fix | Delete
$dstVolume = $this->volume($dst);
[1158] Fix | Delete
if ($dstVolume && ($_stat = $dstVolume->file($dst)) && !empty($_stat['phash'])) {
[1159] Fix | Delete
$dst = $_stat['phash'];
[1160] Fix | Delete
} else {
[1161] Fix | Delete
$dst = '';
[1162] Fix | Delete
}
[1163] Fix | Delete
} else if ($cmd === 'open') {
[1164] Fix | Delete
// for initial open without args `target`
[1165] Fix | Delete
$dstVolume = $this->default;
[1166] Fix | Delete
$dst = $dstVolume->defaultPath();
[1167] Fix | Delete
}
[1168] Fix | Delete
[1169] Fix | Delete
$result = null;
[1170] Fix | Delete
[1171] Fix | Delete
// call pre handlers for this command
[1172] Fix | Delete
$args['sessionCloseEarlier'] = isset($this->sessionUseCmds[$cmd]) ? false : $this->sessionCloseEarlier;
[1173] Fix | Delete
if (!empty($this->listeners[$cmd . '.pre'])) {
[1174] Fix | Delete
foreach ($this->listeners[$cmd . '.pre'] as $handler) {
[1175] Fix | Delete
$_res = call_user_func_array($handler, array($cmd, &$args, $this, $dstVolume));
[1176] Fix | Delete
if (is_array($_res)) {
[1177] Fix | Delete
if (!empty($_res['preventexec'])) {
[1178] Fix | Delete
$result = array('error' => true);
[1179] Fix | Delete
if ($cmd === 'upload' && !empty($args['node'])) {
[1180] Fix | Delete
$result['callback'] = array(
[1181] Fix | Delete
'node' => $args['node'],
[1182] Fix | Delete
'bind' => $cmd
[1183] Fix | Delete
);
[1184] Fix | Delete
}
[1185] Fix | Delete
if (!empty($_res['results']) && is_array($_res['results'])) {
[1186] Fix | Delete
$result = array_merge($result, $_res['results']);
[1187] Fix | Delete
}
[1188] Fix | Delete
break;
[1189] Fix | Delete
}
[1190] Fix | Delete
}
[1191] Fix | Delete
}
[1192] Fix | Delete
}
[1193] Fix | Delete
[1194] Fix | Delete
// unlock session data for multiple access
[1195] Fix | Delete
if ($this->sessionCloseEarlier && $args['sessionCloseEarlier']) {
[1196] Fix | Delete
$this->session->close();
[1197] Fix | Delete
// deprecated property
[1198] Fix | Delete
elFinder::$sessionClosed = true;
[1199] Fix | Delete
}
[1200] Fix | Delete
[1201] Fix | Delete
if (substr(PHP_OS, 0, 3) === 'WIN') {
[1202] Fix | Delete
// set time out
[1203] Fix | Delete
elFinder::extendTimeLimit(300);
[1204] Fix | Delete
}
[1205] Fix | Delete
[1206] Fix | Delete
if (!is_array($result)) {
[1207] Fix | Delete
try {
[1208] Fix | Delete
$result = $this->$cmd($args);
[1209] Fix | Delete
} catch (elFinderAbortException $e) {
[1210] Fix | Delete
throw $e;
[1211] Fix | Delete
} catch (Exception $e) {
[1212] Fix | Delete
$error_res = json_decode($e->getMessage());
[1213] Fix | Delete
$message = isset($error_res->error->message) ? $error_res->error->message : $e->getMessage();
[1214] Fix | Delete
$result = array(
[1215] Fix | Delete
'error' => htmlspecialchars($message),
[1216] Fix | Delete
'sync' => true
[1217] Fix | Delete
);
[1218] Fix | Delete
if ($this->throwErrorOnExec) {
[1219] Fix | Delete
throw $e;
[1220] Fix | Delete
}
[1221] Fix | Delete
}
[1222] Fix | Delete
}
[1223] Fix | Delete
[1224] Fix | Delete
// check change dstDir
[1225] Fix | Delete
$changeDst = false;
[1226] Fix | Delete
if ($dst && $dstVolume && (!empty($result['added']) || !empty($result['removed']))) {
[1227] Fix | Delete
$changeDst = true;
[1228] Fix | Delete
}
[1229] Fix | Delete
[1230] Fix | Delete
foreach ($this->volumes as $volume) {
[1231] Fix | Delete
$removed = $volume->removed();
[1232] Fix | Delete
if (!empty($removed)) {
[1233] Fix | Delete
if (!isset($result['removed'])) {
[1234] Fix | Delete
$result['removed'] = array();
[1235] Fix | Delete
}
[1236] Fix | Delete
$result['removed'] = array_merge($result['removed'], $removed);
[1237] Fix | Delete
if (!$changeDst && $dst && $dstVolume && $volume === $dstVolume) {
[1238] Fix | Delete
$changeDst = true;
[1239] Fix | Delete
}
[1240] Fix | Delete
}
[1241] Fix | Delete
$added = $volume->added();
[1242] Fix | Delete
if (!empty($added)) {
[1243] Fix | Delete
if (!isset($result['added'])) {
[1244] Fix | Delete
$result['added'] = array();
[1245] Fix | Delete
}
[1246] Fix | Delete
$result['added'] = array_merge($result['added'], $added);
[1247] Fix | Delete
if (!$changeDst && $dst && $dstVolume && $volume === $dstVolume) {
[1248] Fix | Delete
$changeDst = true;
[1249] Fix | Delete
}
[1250] Fix | Delete
}
[1251] Fix | Delete
$volume->resetResultStat();
[1252] Fix | Delete
}
[1253] Fix | Delete
[1254] Fix | Delete
// dstDir is changed
[1255] Fix | Delete
if ($changeDst) {
[1256] Fix | Delete
if ($dstDir = $dstVolume->dir($dst)) {
[1257] Fix | Delete
if (!isset($result['changed'])) {
[1258] Fix | Delete
$result['changed'] = array();
[1259] Fix | Delete
}
[1260] Fix | Delete
$result['changed'][] = $dstDir;
[1261] Fix | Delete
}
[1262] Fix | Delete
}
[1263] Fix | Delete
[1264] Fix | Delete
// call handlers for this command
[1265] Fix | Delete
if (!empty($this->listeners[$cmd])) {
[1266] Fix | Delete
foreach ($this->listeners[$cmd] as $handler) {
[1267] Fix | Delete
if (call_user_func_array($handler, array($cmd, &$result, $args, $this, $dstVolume))) {
[1268] Fix | Delete
// handler return true to force sync client after command completed
[1269] Fix | Delete
$result['sync'] = true;
[1270] Fix | Delete
}
[1271] Fix | Delete
}
[1272] Fix | Delete
}
[1273] Fix | Delete
[1274] Fix | Delete
// replace removed files info with removed files hashes
[1275] Fix | Delete
if (!empty($result['removed'])) {
[1276] Fix | Delete
$removed = array();
[1277] Fix | Delete
foreach ($result['removed'] as $file) {
[1278] Fix | Delete
$removed[] = $file['hash'];
[1279] Fix | Delete
}
[1280] Fix | Delete
$result['removed'] = array_unique($removed);
[1281] Fix | Delete
}
[1282] Fix | Delete
// remove hidden files and filter files by mimetypes
[1283] Fix | Delete
if (!empty($result['added'])) {
[1284] Fix | Delete
$result['added'] = $this->filter($result['added']);
[1285] Fix | Delete
}
[1286] Fix | Delete
// remove hidden files and filter files by mimetypes
[1287] Fix | Delete
if (!empty($result['changed'])) {
[1288] Fix | Delete
$result['changed'] = $this->filter($result['changed']);
[1289] Fix | Delete
}
[1290] Fix | Delete
// add toasts
[1291] Fix | Delete
if ($this->toastMessages) {
[1292] Fix | Delete
$result['toasts'] = array_merge(((isset($result['toasts']) && is_array($result['toasts']))? $result['toasts'] : array()), $this->toastMessages);
[1293] Fix | Delete
}
[1294] Fix | Delete
[1295] Fix | Delete
if ($this->debug || !empty($args['debug'])) {
[1296] Fix | Delete
$result['debug'] = array(
[1297] Fix | Delete
'connector' => 'php',
[1298] Fix | Delete
'phpver' => PHP_VERSION,
[1299] Fix | Delete
'time' => $this->utime() - $this->time,
[1300] Fix | Delete
'memory' => (function_exists('memory_get_peak_usage') ? ceil(memory_get_peak_usage() / 1024) . 'Kb / ' : '') . ceil(memory_get_usage() / 1024) . 'Kb / ' . ini_get('memory_limit'),
[1301] Fix | Delete
'upload' => $this->uploadDebug,
[1302] Fix | Delete
'volumes' => array(),
[1303] Fix | Delete
'mountErrors' => $this->mountErrors
[1304] Fix | Delete
);
[1305] Fix | Delete
[1306] Fix | Delete
foreach ($this->volumes as $id => $volume) {
[1307] Fix | Delete
$result['debug']['volumes'][] = $volume->debug();
[1308] Fix | Delete
}
[1309] Fix | Delete
}
[1310] Fix | Delete
[1311] Fix | Delete
// remove sesstion var 'urlContentSaveIds'
[1312] Fix | Delete
if ($this->removeContentSaveIds) {
[1313] Fix | Delete
$urlContentSaveIds = $this->session->get('urlContentSaveIds', array());
[1314] Fix | Delete
foreach (array_keys($this->removeContentSaveIds) as $contentSaveId) {
[1315] Fix | Delete
if (isset($urlContentSaveIds[$contentSaveId])) {
[1316] Fix | Delete
unset($urlContentSaveIds[$contentSaveId]);
[1317] Fix | Delete
}
[1318] Fix | Delete
}
[1319] Fix | Delete
if ($urlContentSaveIds) {
[1320] Fix | Delete
$this->session->set('urlContentSaveIds', $urlContentSaveIds);
[1321] Fix | Delete
} else {
[1322] Fix | Delete
$this->session->remove('urlContentSaveIds');
[1323] Fix | Delete
}
[1324] Fix | Delete
}
[1325] Fix | Delete
[1326] Fix | Delete
foreach ($this->volumes as $volume) {
[1327] Fix | Delete
$volume->saveSessionCache();
[1328] Fix | Delete
$volume->umount();
[1329] Fix | Delete
}
[1330] Fix | Delete
[1331] Fix | Delete
// unlock locked items
[1332] Fix | Delete
$this->itemAutoUnlock();
[1333] Fix | Delete
[1334] Fix | Delete
// custom data
[1335] Fix | Delete
if ($this->customData !== null) {
[1336] Fix | Delete
$result['customData'] = $this->customData ? json_encode($this->customData) : '';
[1337] Fix | Delete
}
[1338] Fix | Delete
[1339] Fix | Delete
if (!empty($result['debug'])) {
[1340] Fix | Delete
$result['debug']['backendErrors'] = elFinder::$phpErrors;
[1341] Fix | Delete
}
[1342] Fix | Delete
elFinder::$phpErrors = array();
[1343] Fix | Delete
restore_error_handler();
[1344] Fix | Delete
[1345] Fix | Delete
if (!empty($result['callback'])) {
[1346] Fix | Delete
$result['callback']['json'] = json_encode($result);
[1347] Fix | Delete
$this->callback($result['callback']);
[1348] Fix | Delete
return array();
[1349] Fix | Delete
} else {
[1350] Fix | Delete
return $result;
[1351] Fix | Delete
}
[1352] Fix | Delete
}
[1353] Fix | Delete
[1354] Fix | Delete
/**
[1355] Fix | Delete
* Return file real path
[1356] Fix | Delete
*
[1357] Fix | Delete
* @param string $hash file hash
[1358] Fix | Delete
*
[1359] Fix | Delete
* @return string
[1360] Fix | Delete
* @author Dmitry (dio) Levashov
[1361] Fix | Delete
**/
[1362] Fix | Delete
public function realpath($hash)
[1363] Fix | Delete
{
[1364] Fix | Delete
if (($volume = $this->volume($hash)) == false) {
[1365] Fix | Delete
return false;
[1366] Fix | Delete
}
[1367] Fix | Delete
return $volume->realpath($hash);
[1368] Fix | Delete
}
[1369] Fix | Delete
[1370] Fix | Delete
/**
[1371] Fix | Delete
* Sets custom data(s).
[1372] Fix | Delete
*
[1373] Fix | Delete
* @param string|array $key The key or data array
[1374] Fix | Delete
* @param mixed $val The value
[1375] Fix | Delete
*
[1376] Fix | Delete
* @return self ( elFinder instance )
[1377] Fix | Delete
*/
[1378] Fix | Delete
public function setCustomData($key, $val = null)
[1379] Fix | Delete
{
[1380] Fix | Delete
if (is_array($key)) {
[1381] Fix | Delete
foreach ($key as $k => $v) {
[1382] Fix | Delete
$this->customData[$k] = $v;
[1383] Fix | Delete
}
[1384] Fix | Delete
} else {
[1385] Fix | Delete
$this->customData[$key] = $val;
[1386] Fix | Delete
}
[1387] Fix | Delete
return $this;
[1388] Fix | Delete
}
[1389] Fix | Delete
[1390] Fix | Delete
/**
[1391] Fix | Delete
* Removes a custom data.
[1392] Fix | Delete
*
[1393] Fix | Delete
* @param string $key The key
[1394] Fix | Delete
*
[1395] Fix | Delete
* @return self ( elFinder instance )
[1396] Fix | Delete
*/
[1397] Fix | Delete
public function removeCustomData($key)
[1398] Fix | Delete
{
[1399] Fix | Delete
$this->customData[$key] = null;
[1400] Fix | Delete
return $this;
[1401] Fix | Delete
}
[1402] Fix | Delete
[1403] Fix | Delete
/**
[1404] Fix | Delete
* Update sesstion value of a NetVolume option
[1405] Fix | Delete
*
[1406] Fix | Delete
* @param string $netKey
[1407] Fix | Delete
* @param string $optionKey
[1408] Fix | Delete
* @param mixed $val
[1409] Fix | Delete
*
[1410] Fix | Delete
* @return bool
[1411] Fix | Delete
*/
[1412] Fix | Delete
public function updateNetVolumeOption($netKey, $optionKey, $val)
[1413] Fix | Delete
{
[1414] Fix | Delete
$netVolumes = $this->getNetVolumes();
[1415] Fix | Delete
if (is_string($netKey) && isset($netVolumes[$netKey]) && is_string($optionKey)) {
[1416] Fix | Delete
$netVolumes[$netKey][$optionKey] = $val;
[1417] Fix | Delete
$this->saveNetVolumes($netVolumes);
[1418] Fix | Delete
return true;
[1419] Fix | Delete
}
[1420] Fix | Delete
return false;
[1421] Fix | Delete
}
[1422] Fix | Delete
[1423] Fix | Delete
/**
[1424] Fix | Delete
* remove of session var "urlContentSaveIds"
[1425] Fix | Delete
*
[1426] Fix | Delete
* @param string $id
[1427] Fix | Delete
*/
[1428] Fix | Delete
public function removeUrlContentSaveId($id)
[1429] Fix | Delete
{
[1430] Fix | Delete
$this->removeContentSaveIds[$id] = true;
[1431] Fix | Delete
}
[1432] Fix | Delete
[1433] Fix | Delete
/**
[1434] Fix | Delete
* Return network volumes config.
[1435] Fix | Delete
*
[1436] Fix | Delete
* @return array
[1437] Fix | Delete
* @author Dmitry (dio) Levashov
[1438] Fix | Delete
*/
[1439] Fix | Delete
protected function getNetVolumes()
[1440] Fix | Delete
{
[1441] Fix | Delete
if ($data = $this->session->get('netvolume', array())) {
[1442] Fix | Delete
return $data;
[1443] Fix | Delete
}
[1444] Fix | Delete
return array();
[1445] Fix | Delete
}
[1446] Fix | Delete
[1447] Fix | Delete
/**
[1448] Fix | Delete
* Save network volumes config.
[1449] Fix | Delete
*
[1450] Fix | Delete
* @param array $volumes volumes config
[1451] Fix | Delete
*
[1452] Fix | Delete
* @return void
[1453] Fix | Delete
* @author Dmitry (dio) Levashov
[1454] Fix | Delete
*/
[1455] Fix | Delete
protected function saveNetVolumes($volumes)
[1456] Fix | Delete
{
[1457] Fix | Delete
$this->session->set('netvolume', $volumes);
[1458] Fix | Delete
}
[1459] Fix | Delete
[1460] Fix | Delete
/**
[1461] Fix | Delete
* Remove netmount volume
[1462] Fix | Delete
*
[1463] Fix | Delete
* @param string $key netvolume key
[1464] Fix | Delete
* @param object $volume volume driver instance
[1465] Fix | Delete
*
[1466] Fix | Delete
* @return bool
[1467] Fix | Delete
*/
[1468] Fix | Delete
protected function removeNetVolume($key, $volume)
[1469] Fix | Delete
{
[1470] Fix | Delete
$netVolumes = $this->getNetVolumes();
[1471] Fix | Delete
$res = true;
[1472] Fix | Delete
if (is_object($volume) && method_exists($volume, 'netunmount')) {
[1473] Fix | Delete
$res = $volume->netunmount($netVolumes, $key);
[1474] Fix | Delete
$volume->clearSessionCache();
[1475] Fix | Delete
}
[1476] Fix | Delete
if ($res) {
[1477] Fix | Delete
if (is_string($key) && isset($netVolumes[$key])) {
[1478] Fix | Delete
unset($netVolumes[$key]);
[1479] Fix | Delete
$this->saveNetVolumes($netVolumes);
[1480] Fix | Delete
return true;
[1481] Fix | Delete
}
[1482] Fix | Delete
}
[1483] Fix | Delete
return false;
[1484] Fix | Delete
}
[1485] Fix | Delete
[1486] Fix | Delete
/**
[1487] Fix | Delete
* Get plugin instance & set to $this->plugins
[1488] Fix | Delete
*
[1489] Fix | Delete
* @param string $name Plugin name (dirctory name)
[1490] Fix | Delete
* @param array $opts Plugin options (optional)
[1491] Fix | Delete
*
[1492] Fix | Delete
* @return object | bool Plugin object instance Or false
[1493] Fix | Delete
* @author Naoki Sawada
[1494] Fix | Delete
*/
[1495] Fix | Delete
protected function getPluginInstance($name, $opts = array())
[1496] Fix | Delete
{
[1497] Fix | Delete
$key = strtolower($name);
[1498] Fix | Delete
if (!isset($this->plugins[$key])) {
[1499] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function