From b8282a956a3bc098346187c2b340e38a7de25236 Mon Sep 17 00:00:00 2001 From: cdujeu Date: Fri, 10 Jun 2016 13:15:36 +0200 Subject: [PATCH] Code clean, unused imports, unreachable statements, etc. --- .../src/pydio/Core/Controller/CliRunner.php | 2 +- .../src/pydio/Core/Controller/XMLWriter.php | 13 ++- .../Core/Exception/AuthRequiredException.php | 2 +- .../Exception/PydioUserAlertException.php | 2 +- .../pydio/Core/Http/Cli/AuthCliMiddleware.php | 2 +- .../pydio/Core/Http/Dav/AuthBackendBasic.php | 4 +- .../pydio/Core/Http/Dav/AuthBackendDigest.php | 4 +- .../src/pydio/Core/Http/Dav/Collection.php | 1 - .../src/core/src/pydio/Core/Http/Dav/Node.php | 3 +- .../pydio/Core/Http/Dav/RootCollection.php | 2 +- .../Core/Http/Middleware/AuthMiddleware.php | 12 +-- .../Core/Http/Middleware/SapiMiddleware.php | 2 +- .../Core/Http/Response/FileReaderResponse.php | 2 +- .../JSONSerializableResponseChunk.php | 2 +- .../Response/XMLSerializableResponseChunk.php | 2 +- .../src/pydio/Core/Http/Rest/ApiRouter.php | 2 +- .../Core/Http/Rest/RestAuthMiddleware.php | 4 +- core/src/core/src/pydio/Core/Http/Server.php | 2 +- .../Core/Http/SimpleRestResourceRouter.php | 2 +- .../src/pydio/Core/Http/TopLevelRouter.php | 2 +- .../src/core/src/pydio/Core/Model/Context.php | 2 +- .../src/pydio/Core/PluginFramework/Plugin.php | 4 +- .../Core/PluginFramework/PluginsService.php | 6 +- .../src/pydio/Core/Services/ConfService.php | 6 +- .../src/pydio/Core/Utils/BruteForceHelper.php | 2 +- .../pydio/Core/Utils/PydioSdkGenerator.php | 1 + .../core/src/pydio/Core/Utils/TextEncoder.php | 2 +- core/src/core/src/pydio/Core/Utils/Utils.php | 5 +- .../core/src/pydio/Core/Utils/VarsFilter.php | 4 +- core/src/core/src/pydio/Tests/UsersConfig.php | 2 +- .../access.demo/class.demoAccessDriver.php | 2 +- .../class.dropboxAccessDriver.php | 2 +- .../access.dropbox/class.dropboxWrapper.php | 2 +- .../access.fs/class.fsAccessDriver.php | 11 ++- .../access.fs/class.fsAccessWrapper.php | 3 +- core/src/plugins/access.fs/test.fsAccess.php | 2 +- .../access.ftp/class.ftpAccessDriver.php | 2 +- .../access.ftp/class.ftpAccessWrapper.php | 6 +- .../access.imap/class.imapAccessWrapper.php | 5 +- .../access.inbox/class.inboxAccessDriver.php | 2 +- .../access.inbox/class.inboxAccessWrapper.php | 2 +- .../access.jsapi/class.jsapiAccessDriver.php | 2 +- .../access.mysql/class.mysqlAccessDriver.php | 3 +- .../access.s3/class.s3AccessDriver.php | 2 +- .../access.s3/class.s3AccessWrapper.php | 2 +- .../access.sftp/class.sftpAccessDriver.php | 2 +- .../access.sftp/class.sftpAccessWrapper.php | 7 +- .../class.sftpPSLAccessWrapper.php | 4 +- .../access.smb/class.smbAccessDriver.php | 11 +-- .../access.smb/class.smbAccessWrapper.php | 4 +- .../access.swift/class.swiftAccessWrapper.php | 4 +- core/src/plugins/access.webdav/src/Driver.php | 2 +- .../class.AntivirusScanner.php | 8 +- .../action.avatar/class.AvatarProvider.php | 2 +- .../class.PluginCompression.php | 6 +- .../class.PowerFSController.php | 5 +- .../action.scheduler/class.AjxpScheduler.php | 2 +- .../src/Legacy/LegacyPubliclet.php | 8 +- .../action.share/src/Model/CompositeShare.php | 4 +- .../action.share/src/Model/ShareLink.php | 2 +- .../plugins/action.share/src/ShareCenter.php | 5 +- .../src/Store/ShareMetaManager.php | 2 +- .../src/Store/ShareRightsManager.php | 8 +- .../action.share/src/Store/ShareStore.php | 6 +- .../class.TimestampCreator.php | 4 +- .../class.AjaXplorerUpgrader.php | 91 ++++++++++--------- .../plugins/auth.ftp/class.ftpAuthDriver.php | 2 +- .../auth.multi/class.multiAuthDriver.php | 2 +- .../auth.remote/class.remoteAuthDriver.php | 2 +- .../auth.remote/cms_auth_functions.php | 11 ++- .../plugins/auth.remote/sessionSwitcher.php | 2 + .../plugins/auth.smb/class.smbAuthDriver.php | 4 +- .../plugins/auth.sql/class.sqlAuthDriver.php | 2 +- .../class.CypheredAuthFrontend.php | 2 +- .../class.KeystoreAuthFrontend.php | 2 +- .../boot.conf/class.BootConfLoader.php | 1 + .../conf.serial/class.AJXP_SerialUser.php | 1 + .../conf.serial/class.serialConfDriver.php | 2 +- .../plugins/conf.sql/class.AJXP_SqlUser.php | 2 + .../plugins/conf.sql/class.sqlConfDriver.php | 12 ++- .../src/AJXP_MetaStreamWrapper.php | 4 +- .../core.access/src/AbstractAccessDriver.php | 2 +- .../src/Filter/AJXP_PermissionMask.php | 2 +- .../core.access/src/Filter/ContentFilter.php | 1 - .../core.access/src/Model/AJXP_Node.php | 4 +- .../core.access/src/Model/NodesDiff.php | 2 +- .../core.access/src/Model/Repository.php | 5 +- .../core.access/src/Model/UserSelection.php | 6 +- .../core.access/src/Stream/AuthWrapper.php | 1 - .../core.cache/class.AbstractCacheDriver.php | 4 +- .../core.cache/class.CacheStreamLayer.php | 2 +- .../src/plugins/core.conf/class.AJXP_Role.php | 2 +- .../core.conf/class.AbstractConfDriver.php | 4 +- .../plugins/core.index/class.CoreIndexer.php | 15 ++- .../plugins/core.log/class.AJXP_Logger.php | 2 +- .../class.AJXP_AbstractMetaSource.php | 2 +- .../interface.MetaStoreProvider.php | 2 +- .../class.AJXP_Notification.php | 2 +- .../interface.AJXP_FeedStore.php | 2 +- .../plugins/core.ocs/src/Client/OCSClient.php | 9 -- .../core.ocs/src/Model/RemoteShare.php | 2 +- .../src/Server/Dav/AuthSharingBackend.php | 4 +- .../core.ocs/src/Server/Dav/Server.php | 4 +- .../plugins/core.tasks/src/ITasksProvider.php | 4 +- .../src/Providers/SqlTasksProvider.php | 2 +- .../plugins/core.tasks/src/TaskController.php | 6 +- .../plugins/core.tasks/src/TaskService.php | 2 +- .../editor.audio/class.AudioPreviewer.php | 4 +- .../editor.browser/class.FileMimeSender.php | 2 +- .../plugins/editor.diaporama/PThumb.lib.php | 6 -- .../editor.diaporama/class.ImagePreviewer.php | 9 +- .../plugins/editor.eml/class.EmlParser.php | 5 +- .../editor.etherpad/class.EtherpadClient.php | 4 +- .../editor.imagick/class.IMagickPreviewer.php | 15 +-- .../editor.pixlr/class.PixlrEditor.php | 6 +- .../editor.video/class.VideoReader.php | 2 +- .../plugins/editor.zoho/class.ZohoEditor.php | 3 +- .../feed.sql/class.AJXP_SqlFeedStore.php | 4 +- .../index.lucene/class.AjxpLuceneIndexer.php | 36 ++++---- .../plugins/log.sql/class.sqlLogDriver.php | 13 ++- .../plugins/log.syslog/class.sysLogDriver.php | 2 + .../meta.exif/class.ExifMetaManager.php | 11 +-- .../plugins/meta.exif/class.GeoConversion.php | 34 +++---- .../src/plugins/meta.git/class.GitManager.php | 2 +- .../class.FSMonitoringManager.php | 2 +- .../src/plugins/meta.svn/class.SvnManager.php | 2 +- .../meta.user/class.UserMetaManager.php | 2 +- .../metastore.s3/class.s3MetaStore.php | 4 +- .../metastore.xattr/class.xAttrMetaStore.php | 4 +- .../mq.sql/class.AJXP_SqlMessageExchanger.php | 2 +- .../class.PluploadProcessor.php | 2 +- core/src/worker.php | 2 +- 132 files changed, 335 insertions(+), 323 deletions(-) diff --git a/core/src/core/src/pydio/Core/Controller/CliRunner.php b/core/src/core/src/pydio/Core/Controller/CliRunner.php index 3e3ec4ad52..ae0bd52daf 100644 --- a/core/src/core/src/pydio/Core/Controller/CliRunner.php +++ b/core/src/core/src/pydio/Core/Controller/CliRunner.php @@ -134,7 +134,7 @@ public static function runCommandInBackground($cmd, $logFile) if (AJXP_SERVER_DEBUG) $cmd .= " > " . $logFile; if (class_exists("COM") && ConfService::getCoreConf("CLI_USE_COM")) { $WshShell = new COM("WScript.Shell"); - $oExec = $WshShell->Run("cmd /C $cmd", 0, false); + $WshShell->Run("cmd /C $cmd", 0, false); } else { $basePath = str_replace("/", DIRECTORY_SEPARATOR, AJXP_INSTALL_PATH); $tmpBat = implode(DIRECTORY_SEPARATOR, array($basePath, "data", "tmp", md5(time()) . ".bat")); diff --git a/core/src/core/src/pydio/Core/Controller/XMLWriter.php b/core/src/core/src/pydio/Core/Controller/XMLWriter.php index 8da8f36059..07b5ea9431 100644 --- a/core/src/core/src/pydio/Core/Controller/XMLWriter.php +++ b/core/src/core/src/pydio/Core/Controller/XMLWriter.php @@ -24,6 +24,8 @@ use Pydio\Access\Core\IAjxpWrapperProvider; use Pydio\Core\Model\Context; use Pydio\Core\Model\ContextInterface; +use Pydio\Core\Model\RepositoryInterface; +use Pydio\Core\Model\UserInterface; use Pydio\Core\Services\LocaleService; use Pydio\Core\Services\UsersService; use Pydio\Core\Utils\Utils; @@ -79,6 +81,7 @@ public static function close($docNode="tree", $print = true) { if($print){ print(""); + return ""; }else{ return ""; } @@ -615,10 +618,10 @@ public static function writeRepositoriesData(ContextInterface $ctx) /** * @param string $repoId - * @param \Pydio\Access\Core\Model\Repository $repoObject + * @param RepositoryInterface $repoObject * @param array $exposed * @param array $streams - * @param AbstractAjxpUser $loggedUser + * @param UserInterface $loggedUser * @param string $accessStatus * @return string * @throws \Exception @@ -638,7 +641,7 @@ public static function repositoryToXML($repoId, $repoObject, $exposed, $streams, } $streamString = ""; - if (in_array($repoObject->accessType, $streams)) { + if (in_array($repoObject->getAccessType(), $streams)) { $streamString = "allowCrossRepositoryCopy=\"true\""; } if ($repoObject->getUniqueUser()) { @@ -678,7 +681,7 @@ public static function repositoryToXML($repoId, $repoObject, $exposed, $streams, $ctx = Context::contextWithObjects($loggedUser, $repoObject); $roleString=""; if($loggedUser != null){ - $merged = $loggedUser->mergedRole; + $merged = $loggedUser->getMergedRole(); $params = array(); foreach($exposed as $exposed_prop){ $metaOptions = $repoObject->getContextOption($ctx, "META_SOURCES"); @@ -701,7 +704,7 @@ public static function repositoryToXML($repoId, $repoObject, $exposed, $streams, $roleString.= ' hasMask="true" '; } } - return "accessType."\" id=\"".$repoId."\"$statusString $streamString $slugString $isSharedString $roleString>".$descTag.$repoObject->getClientSettings($ctx).""; + return "getAccessType()."\" id=\"".$repoId."\"$statusString $streamString $slugString $isSharedString $roleString>".$descTag.$repoObject->getClientSettings($ctx).""; } diff --git a/core/src/core/src/pydio/Core/Exception/AuthRequiredException.php b/core/src/core/src/pydio/Core/Exception/AuthRequiredException.php index 242c15161b..0201c44933 100644 --- a/core/src/core/src/pydio/Core/Exception/AuthRequiredException.php +++ b/core/src/core/src/pydio/Core/Exception/AuthRequiredException.php @@ -23,7 +23,7 @@ use Pydio\Core\Http\Message\UserMessage; use Pydio\Core\Http\Response\JSONSerializableResponseChunk; use Pydio\Core\Http\Response\XMLSerializableResponseChunk; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Services\LocaleService; defined('AJXP_EXEC') or die('Access not allowed'); diff --git a/core/src/core/src/pydio/Core/Exception/PydioUserAlertException.php b/core/src/core/src/pydio/Core/Exception/PydioUserAlertException.php index 53dee0aeba..a251f02dca 100644 --- a/core/src/core/src/pydio/Core/Exception/PydioUserAlertException.php +++ b/core/src/core/src/pydio/Core/Exception/PydioUserAlertException.php @@ -20,7 +20,7 @@ */ namespace Pydio\Core\Exception; -use Pydio\Core\Exception\PydioException; + defined('AJXP_EXEC') or die('Access not allowed'); diff --git a/core/src/core/src/pydio/Core/Http/Cli/AuthCliMiddleware.php b/core/src/core/src/pydio/Core/Http/Cli/AuthCliMiddleware.php index 29fb3d8706..bbc5e4339f 100644 --- a/core/src/core/src/pydio/Core/Http/Cli/AuthCliMiddleware.php +++ b/core/src/core/src/pydio/Core/Http/Cli/AuthCliMiddleware.php @@ -23,7 +23,7 @@ use Psr\Http\Message\ResponseInterface; use Psr\Http\Message\ServerRequestInterface; use Pydio\Auth\Core\AJXP_Safe; -use Pydio\Core\Controller\Controller; + use Pydio\Core\Exception\AuthRequiredException; use Pydio\Core\Exception\LoginException; use Pydio\Core\Http\Server; diff --git a/core/src/core/src/pydio/Core/Http/Dav/AuthBackendBasic.php b/core/src/core/src/pydio/Core/Http/Dav/AuthBackendBasic.php index db3a90c91f..9b2bf9d61f 100644 --- a/core/src/core/src/pydio/Core/Http/Dav/AuthBackendBasic.php +++ b/core/src/core/src/pydio/Core/Http/Dav/AuthBackendBasic.php @@ -28,10 +28,10 @@ use Pydio\Core\Exception\WorkspaceNotFoundException; use Pydio\Core\Model\ContextInterface; use Pydio\Core\Model\UserInterface; -use Pydio\Core\PluginFramework\PluginsService; + use Pydio\Core\Services\AuthService; use Pydio\Core\Services\ConfService; -use Pydio\Core\Services\RepositoryService; + use Pydio\Core\Services\UsersService; use Pydio\Core\Utils\TextEncoder; use Pydio\Log\Core\AJXP_Logger; diff --git a/core/src/core/src/pydio/Core/Http/Dav/AuthBackendDigest.php b/core/src/core/src/pydio/Core/Http/Dav/AuthBackendDigest.php index c28b369585..d97854f78b 100644 --- a/core/src/core/src/pydio/Core/Http/Dav/AuthBackendDigest.php +++ b/core/src/core/src/pydio/Core/Http/Dav/AuthBackendDigest.php @@ -24,8 +24,8 @@ use Pydio\Core\Exception\RepositoryLoadException; use Pydio\Core\Exception\WorkspaceForbiddenException; use Pydio\Core\Exception\WorkspaceNotFoundException; -use Pydio\Core\PluginFramework\PluginsService; -use Pydio\Core\Services\RepositoryService; + + use Pydio\Core\Services\UsersService; use Pydio\Core\Utils\TextEncoder; use \Sabre; diff --git a/core/src/core/src/pydio/Core/Http/Dav/Collection.php b/core/src/core/src/pydio/Core/Http/Dav/Collection.php index 562d05e464..40d6f2f3af 100644 --- a/core/src/core/src/pydio/Core/Http/Dav/Collection.php +++ b/core/src/core/src/pydio/Core/Http/Dav/Collection.php @@ -166,7 +166,6 @@ public function getChildren() $contents = array(); - $errors = array(); $nodes = scandir($this->getUrl()); diff --git a/core/src/core/src/pydio/Core/Http/Dav/Node.php b/core/src/core/src/pydio/Core/Http/Dav/Node.php index d96890ce42..d6ebe33a26 100644 --- a/core/src/core/src/pydio/Core/Http/Dav/Node.php +++ b/core/src/core/src/pydio/Core/Http/Dav/Node.php @@ -20,6 +20,7 @@ */ namespace Pydio\Core\Http\Dav; +use Pydio\Core\Exception\PydioException; use \Sabre; use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Access\Core\IAjxpWrapperProvider; @@ -89,7 +90,7 @@ public function getAccessDriver() $n = new AJXP_Node($this->getUrl()); return $n->getDriver(); } - throw new \Exception("Cannot find driver instance for current node! ".$this->path); + throw new \Sabre\DAV\Exception\NotFound("Cannot find driver instance for current node! ".$this->path); } /** diff --git a/core/src/core/src/pydio/Core/Http/Dav/RootCollection.php b/core/src/core/src/pydio/Core/Http/Dav/RootCollection.php index 233bdc1b49..2c0f97ce70 100644 --- a/core/src/core/src/pydio/Core/Http/Dav/RootCollection.php +++ b/core/src/core/src/pydio/Core/Http/Dav/RootCollection.php @@ -23,7 +23,7 @@ use Pydio\Core\Model\FilteredRepositoriesList; use \Sabre; use Pydio\Core\Model\ContextInterface; -use Pydio\Core\Services\ConfService; + use Pydio\Core\PluginFramework\PluginsService; defined('AJXP_EXEC') or die( 'Access not allowed'); diff --git a/core/src/core/src/pydio/Core/Http/Middleware/AuthMiddleware.php b/core/src/core/src/pydio/Core/Http/Middleware/AuthMiddleware.php index 43c249be76..348a1b418e 100644 --- a/core/src/core/src/pydio/Core/Http/Middleware/AuthMiddleware.php +++ b/core/src/core/src/pydio/Core/Http/Middleware/AuthMiddleware.php @@ -26,19 +26,15 @@ use Pydio\Core\Exception\AuthRequiredException; use Pydio\Core\Exception\NoActiveWorkspaceException; use Pydio\Core\Exception\PydioException; -use Pydio\Core\Exception\RepositoryLoadException; + use Pydio\Core\Http\Server; use Pydio\Core\Model\Context; use Pydio\Core\Model\ContextInterface; use Pydio\Core\PluginFramework\PluginsService; -use Pydio\Core\Services\AuthService; + use Pydio\Core\Services\ConfService; -use Pydio\Core\Services\LocaleService; -use Pydio\Core\Services\RolesService; -use Pydio\Core\Services\SessionService; -use Pydio\Core\Services\UsersService; -use Pydio\Core\Utils\Utils; -use Pydio\Log\Core\AJXP_Logger; + + use Zend\Diactoros\Response\EmptyResponse; defined('AJXP_EXEC') or die('Access not allowed'); diff --git a/core/src/core/src/pydio/Core/Http/Middleware/SapiMiddleware.php b/core/src/core/src/pydio/Core/Http/Middleware/SapiMiddleware.php index e2b1671d36..93bc561531 100644 --- a/core/src/core/src/pydio/Core/Http/Middleware/SapiMiddleware.php +++ b/core/src/core/src/pydio/Core/Http/Middleware/SapiMiddleware.php @@ -23,7 +23,7 @@ use \Psr\Http\Message\ServerRequestInterface; use \Psr\Http\Message\ResponseInterface; use Pydio\Core\Exception\PydioException; -use Pydio\Core\Http\Rest\ApiRouter; + use Pydio\Core\Http\Response\SerializableResponseStream; use Pydio\Core\Http\Server; use Pydio\Core\Utils\Utils; diff --git a/core/src/core/src/pydio/Core/Http/Response/FileReaderResponse.php b/core/src/core/src/pydio/Core/Http/Response/FileReaderResponse.php index 7efbac8e23..ebfc6f6503 100644 --- a/core/src/core/src/pydio/Core/Http/Response/FileReaderResponse.php +++ b/core/src/core/src/pydio/Core/Http/Response/FileReaderResponse.php @@ -178,7 +178,7 @@ public function readFile($node = null, $filePath = null, $data = null, $headerTy } else { $size = $byteLength; } - if ($confGzip && ($size > $confGzipLimit || !function_exists("gzencode") || @strpos($serverParams['HTTP_ACCEPT_ENCODING'], 'gzip') === FALSE)) { + if ($confGzip && ($size > $confGzipLimit || !function_exists("gzencode") || (isSet($serverParams['HTTP_ACCEPT_ENCODING']) && strpos($serverParams['HTTP_ACCEPT_ENCODING'], 'gzip') === FALSE))) { $confGzip = false; } diff --git a/core/src/core/src/pydio/Core/Http/Response/JSONSerializableResponseChunk.php b/core/src/core/src/pydio/Core/Http/Response/JSONSerializableResponseChunk.php index 08dfdccf2a..2152169927 100644 --- a/core/src/core/src/pydio/Core/Http/Response/JSONSerializableResponseChunk.php +++ b/core/src/core/src/pydio/Core/Http/Response/JSONSerializableResponseChunk.php @@ -20,7 +20,7 @@ */ namespace Pydio\Core\Http\Response; -use Pydio\Core\Http\Response\SerializableResponseChunk; + defined('AJXP_EXEC') or die('Access not allowed'); diff --git a/core/src/core/src/pydio/Core/Http/Response/XMLSerializableResponseChunk.php b/core/src/core/src/pydio/Core/Http/Response/XMLSerializableResponseChunk.php index 79731ca922..1aec4dff04 100644 --- a/core/src/core/src/pydio/Core/Http/Response/XMLSerializableResponseChunk.php +++ b/core/src/core/src/pydio/Core/Http/Response/XMLSerializableResponseChunk.php @@ -20,7 +20,7 @@ */ namespace Pydio\Core\Http\Response; -use Pydio\Core\Http\Response\SerializableResponseChunk; + defined('AJXP_EXEC') or die('Access not allowed'); diff --git a/core/src/core/src/pydio/Core/Http/Rest/ApiRouter.php b/core/src/core/src/pydio/Core/Http/Rest/ApiRouter.php index afb921ae28..f92ddf70db 100644 --- a/core/src/core/src/pydio/Core/Http/Rest/ApiRouter.php +++ b/core/src/core/src/pydio/Core/Http/Rest/ApiRouter.php @@ -100,7 +100,7 @@ public function route(ServerRequestInterface &$request, ResponseInterface &$resp //$response = $response->withStatus(404); break; case \FastRoute\Dispatcher::METHOD_NOT_ALLOWED: - $allowedMethods = $routeInfo[1]; + //$allowedMethods = $routeInfo[1]; //$response = $response->withStatus(405); break; case \FastRoute\Dispatcher::FOUND: diff --git a/core/src/core/src/pydio/Core/Http/Rest/RestAuthMiddleware.php b/core/src/core/src/pydio/Core/Http/Rest/RestAuthMiddleware.php index 418df460de..505f03a8c5 100644 --- a/core/src/core/src/pydio/Core/Http/Rest/RestAuthMiddleware.php +++ b/core/src/core/src/pydio/Core/Http/Rest/RestAuthMiddleware.php @@ -25,12 +25,12 @@ use Pydio\Core\Exception\NoActiveWorkspaceException; use Pydio\Core\Exception\PydioException; use Pydio\Core\Exception\WorkspaceForbiddenException; -use Pydio\Core\Exception\WorkspaceNotFoundException; + use Pydio\Core\Model\Context; use Pydio\Core\Model\ContextInterface; use Pydio\Core\PluginFramework\PluginsService; use Pydio\Core\Services\ConfService; -use Pydio\Core\Services\RepositoryService; + use Pydio\Core\Services\RolesService; use Pydio\Core\Services\UsersService; use Pydio\Core\Utils\Utils; diff --git a/core/src/core/src/pydio/Core/Http/Server.php b/core/src/core/src/pydio/Core/Http/Server.php index 73927ab31b..c1b917a76b 100644 --- a/core/src/core/src/pydio/Core/Http/Server.php +++ b/core/src/core/src/pydio/Core/Http/Server.php @@ -23,7 +23,7 @@ use Psr\Http\Message\ResponseInterface; use Psr\Http\Message\ServerRequestInterface; use Pydio\Core\Exception\PydioException; -use Pydio\Core\Http\Cli\CliMiddleware; + use Pydio\Core\Http\Message\PromptMessage; use Pydio\Core\Http\Message\UserMessage; use Pydio\Core\Http\Middleware\ITopLevelMiddleware; diff --git a/core/src/core/src/pydio/Core/Http/SimpleRestResourceRouter.php b/core/src/core/src/pydio/Core/Http/SimpleRestResourceRouter.php index bea6de31c4..78edc67ee7 100644 --- a/core/src/core/src/pydio/Core/Http/SimpleRestResourceRouter.php +++ b/core/src/core/src/pydio/Core/Http/SimpleRestResourceRouter.php @@ -141,7 +141,7 @@ public function route(ServerRequestInterface &$request, ResponseInterface &$resp //$response = $response->withStatus(404); break; case \FastRoute\Dispatcher::METHOD_NOT_ALLOWED: - $allowedMethods = $routeInfo[1]; + //$allowedMethods = $routeInfo[1]; //$response = $response->withStatus(405); break; case \FastRoute\Dispatcher::FOUND: diff --git a/core/src/core/src/pydio/Core/Http/TopLevelRouter.php b/core/src/core/src/pydio/Core/Http/TopLevelRouter.php index 4d2d531b1d..553adb1bb4 100644 --- a/core/src/core/src/pydio/Core/Http/TopLevelRouter.php +++ b/core/src/core/src/pydio/Core/Http/TopLevelRouter.php @@ -23,7 +23,7 @@ use Psr\Http\Message\ResponseInterface; use Psr\Http\Message\ServerRequestInterface; use Pydio\Core\Exception\PydioException; -use Pydio\Core\Utils\Utils; + use Zend\Diactoros\ServerRequestFactory; defined('AJXP_EXEC') or die('Access not allowed'); diff --git a/core/src/core/src/pydio/Core/Model/Context.php b/core/src/core/src/pydio/Core/Model/Context.php index 5d545c8601..c2aadc2618 100644 --- a/core/src/core/src/pydio/Core/Model/Context.php +++ b/core/src/core/src/pydio/Core/Model/Context.php @@ -20,7 +20,7 @@ */ namespace Pydio\Core\Model; -use Pydio\Core\Services\AuthService; + use Pydio\Core\Services\ConfService; use Pydio\Core\Services\RepositoryService; diff --git a/core/src/core/src/pydio/Core/PluginFramework/Plugin.php b/core/src/core/src/pydio/Core/PluginFramework/Plugin.php index 5d3afb6c07..0064481f7f 100644 --- a/core/src/core/src/pydio/Core/PluginFramework/Plugin.php +++ b/core/src/core/src/pydio/Core/PluginFramework/Plugin.php @@ -23,8 +23,8 @@ use Pydio\Access\Core\AJXP_MetaStreamWrapper; use Pydio\Core\Model\Context; use Pydio\Core\Model\ContextInterface; -use Pydio\Core\Model\RepositoryInterface; -use Pydio\Core\Services\AuthService; + + use Pydio\Core\Services\ConfService; use Pydio\Core\Controller\XMLWriter; use Pydio\Log\Core\AJXP_Logger; diff --git a/core/src/core/src/pydio/Core/PluginFramework/PluginsService.php b/core/src/core/src/pydio/Core/PluginFramework/PluginsService.php index 7edaeacfa0..3ea278b996 100644 --- a/core/src/core/src/pydio/Core/PluginFramework/PluginsService.php +++ b/core/src/core/src/pydio/Core/PluginFramework/PluginsService.php @@ -31,10 +31,10 @@ use Pydio\Core\Exception\RepositoryLoadException; use Pydio\Core\Model\Context; use Pydio\Core\Model\ContextInterface; -use Pydio\Core\Model\RepositoryInterface; -use Pydio\Core\Services\AuthService; + + use Pydio\Core\Services\CacheService; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Services\UsersService; use Pydio\Core\Utils\Utils; use Pydio\Log\Core\AJXP_Logger; diff --git a/core/src/core/src/pydio/Core/Services/ConfService.php b/core/src/core/src/pydio/Core/Services/ConfService.php index 9ff7bfcf6e..9f9681c5ff 100644 --- a/core/src/core/src/pydio/Core/Services/ConfService.php +++ b/core/src/core/src/pydio/Core/Services/ConfService.php @@ -20,16 +20,16 @@ */ namespace Pydio\Core\Services; -use Pydio\Access\Core\AbstractAccessDriver; + use Pydio\Access\Core\AJXP_MetaStreamWrapper; use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Auth\Core\AbstractAuthDriver; use Pydio\Cache\Core\AbstractCacheDriver; use Pydio\Conf\Core\AbstractAjxpUser; use Pydio\Conf\Core\AbstractConfDriver; -use Pydio\Core\Exception\PydioException; + use Pydio\Core\Model\Context; -use Pydio\Core\Model\RepositoryInterface; + use Pydio\Core\Model\UserInterface; use Pydio\Core\PluginFramework\CoreInstanceProvider; use Pydio\Core\Utils\Utils; diff --git a/core/src/core/src/pydio/Core/Utils/BruteForceHelper.php b/core/src/core/src/pydio/Core/Utils/BruteForceHelper.php index 730026fcc2..ba7ba97905 100644 --- a/core/src/core/src/pydio/Core/Utils/BruteForceHelper.php +++ b/core/src/core/src/pydio/Core/Utils/BruteForceHelper.php @@ -20,7 +20,7 @@ */ namespace Pydio\Core\Utils; -use Pydio\Core\Services\AuthService; + use Pydio\Core\Services\ConfService; use Pydio\Log\Core\AJXP_Logger; diff --git a/core/src/core/src/pydio/Core/Utils/PydioSdkGenerator.php b/core/src/core/src/pydio/Core/Utils/PydioSdkGenerator.php index 056b2babf8..aea52be161 100644 --- a/core/src/core/src/pydio/Core/Utils/PydioSdkGenerator.php +++ b/core/src/core/src/pydio/Core/Utils/PydioSdkGenerator.php @@ -30,6 +30,7 @@ namespace Pydio\Core\Utils; //define("JSON_DIR", AJXP_INSTALL_PATH."/core/doc/api"); +use Pydio\Core\PluginFramework\Plugin; use Pydio\Core\PluginFramework\PluginsService; define("JSON_DIR", AJXP_INSTALL_PATH."/../api"); diff --git a/core/src/core/src/pydio/Core/Utils/TextEncoder.php b/core/src/core/src/pydio/Core/Utils/TextEncoder.php index c895efa4b0..7a7b0ea3dd 100644 --- a/core/src/core/src/pydio/Core/Utils/TextEncoder.php +++ b/core/src/core/src/pydio/Core/Utils/TextEncoder.php @@ -21,7 +21,7 @@ namespace Pydio\Core\Utils; use Pydio\Core\Model\ContextInterface; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Services\SessionService; defined('AJXP_EXEC') or die( 'Access not allowed'); diff --git a/core/src/core/src/pydio/Core/Utils/Utils.php b/core/src/core/src/pydio/Core/Utils/Utils.php index a9c9777f18..192d517e63 100644 --- a/core/src/core/src/pydio/Core/Utils/Utils.php +++ b/core/src/core/src/pydio/Core/Utils/Utils.php @@ -21,9 +21,10 @@ namespace Pydio\Core\Utils; use Psr\Http\Message\UploadedFileInterface; -use Pydio\Access\Core\Model\Repository; + use Pydio\Core\Model\Context; use Pydio\Core\Model\ContextInterface; +use Pydio\Core\Model\RepositoryInterface; use Pydio\Core\Services\AuthService; use Pydio\Core\Services\ConfService; use Pydio\Core\PluginFramework\Plugin; @@ -915,7 +916,7 @@ public static function detectServerURL($withURI = false) } /** - * @param Repository $repository + * @param RepositoryInterface $repository * @return string */ public static function getWorkspaceShortcutURL($repository){ diff --git a/core/src/core/src/pydio/Core/Utils/VarsFilter.php b/core/src/core/src/pydio/Core/Utils/VarsFilter.php index 16a5f6274a..9e352b9c80 100644 --- a/core/src/core/src/pydio/Core/Utils/VarsFilter.php +++ b/core/src/core/src/pydio/Core/Utils/VarsFilter.php @@ -24,8 +24,8 @@ use Pydio\Core\Exception\PydioException; use Pydio\Core\Model\ContextInterface; use Pydio\Core\Services; -use Pydio\Core\Services\AuthService; -use Pydio\Conf\Core\AbstractAjxpUser; + + use Pydio\Core\Services\ConfService; use Pydio\Core\Services\UsersService; diff --git a/core/src/core/src/pydio/Tests/UsersConfig.php b/core/src/core/src/pydio/Tests/UsersConfig.php index a4464f7123..b4ea8eb37b 100644 --- a/core/src/core/src/pydio/Tests/UsersConfig.php +++ b/core/src/core/src/pydio/Tests/UsersConfig.php @@ -20,7 +20,7 @@ */ namespace Pydio\Tests; -use Pydio\Core\Services\AuthService; + use Pydio\Core\Services\ConfService; use Pydio\Core\Services\UsersService; diff --git a/core/src/plugins/access.demo/class.demoAccessDriver.php b/core/src/plugins/access.demo/class.demoAccessDriver.php index 7682a26342..d9358bedf4 100644 --- a/core/src/plugins/access.demo/class.demoAccessDriver.php +++ b/core/src/plugins/access.demo/class.demoAccessDriver.php @@ -24,7 +24,7 @@ use Psr\Http\Message\ResponseInterface; use Psr\Http\Message\ServerRequestInterface; use Pydio\Access\Core\Model\Repository; -use Pydio\Core\Controller\XMLWriter; + use Pydio\Core\Exception\PydioException; defined('AJXP_EXEC') or die( 'Access not allowed'); diff --git a/core/src/plugins/access.dropbox/class.dropboxAccessDriver.php b/core/src/plugins/access.dropbox/class.dropboxAccessDriver.php index f1092709e8..66eea78284 100644 --- a/core/src/plugins/access.dropbox/class.dropboxAccessDriver.php +++ b/core/src/plugins/access.dropbox/class.dropboxAccessDriver.php @@ -25,7 +25,7 @@ use Pydio\Access\Driver\StreamProvider\FS\fsAccessDriver; use Pydio\Core\Exception\PydioUserAlertException; use Pydio\Core\Model\ContextInterface; -use Pydio\Core\Services\AuthService; + use Pydio\Core\Services\UsersService; use Pydio\Core\Utils\Utils; diff --git a/core/src/plugins/access.dropbox/class.dropboxWrapper.php b/core/src/plugins/access.dropbox/class.dropboxWrapper.php index 9efc0663fb..fe27cee2a6 100644 --- a/core/src/plugins/access.dropbox/class.dropboxWrapper.php +++ b/core/src/plugins/access.dropbox/class.dropboxWrapper.php @@ -27,7 +27,7 @@ use Dropbox_OAuth_PEAR; use Pydio\Access\Core\IAjxpWrapper; use Pydio\Access\Core\Model\AJXP_Node; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Services\RepositoryService; use Pydio\Core\Utils\Utils; use Pydio\Log\Core\AJXP_Logger; diff --git a/core/src/plugins/access.fs/class.fsAccessDriver.php b/core/src/plugins/access.fs/class.fsAccessDriver.php index ad87a197e5..d1503f139d 100644 --- a/core/src/plugins/access.fs/class.fsAccessDriver.php +++ b/core/src/plugins/access.fs/class.fsAccessDriver.php @@ -167,11 +167,15 @@ public function directoryUsage(AJXP_Node $node){ if($size != -1){ return $size; }else{ - return $this->recursiveDirUsageByListing($directoryPath); + return $this->recursiveDirUsageByListing($node->getUrl()); } } + /** + * @param $path + * @return int|string + */ protected function recursiveDirUsageByListing($path){ $total_size = 0; $files = scandir($path); @@ -190,6 +194,11 @@ protected function recursiveDirUsageByListing($path){ return $total_size; } + /** + * @param $contribNode + * @param $arrayActions + * @param $targetMethod + */ public function redirectActionsToMethod(&$contribNode, $arrayActions, $targetMethod) { $actionXpath=new DOMXPath($contribNode->ownerDocument); diff --git a/core/src/plugins/access.fs/class.fsAccessWrapper.php b/core/src/plugins/access.fs/class.fsAccessWrapper.php index 5b0b9dc21d..21f2422de0 100644 --- a/core/src/plugins/access.fs/class.fsAccessWrapper.php +++ b/core/src/plugins/access.fs/class.fsAccessWrapper.php @@ -26,7 +26,7 @@ use Pydio\Access\Core\IAjxpWrapper; use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Access\Core\Model\UserSelection; -use Pydio\Core\Services\AuthService; + use Pydio\Core\Services\ConfService; use Pydio\Core\Exception\PydioException; use Pydio\Core\Utils\Utils; @@ -437,6 +437,7 @@ public function mkdir($path, $mode, $options) * * @param string $path * @param int $options + * @return bool */ public function dir_opendir ($path , $options ) { diff --git a/core/src/plugins/access.fs/test.fsAccess.php b/core/src/plugins/access.fs/test.fsAccess.php index 06d69f3732..f437556d5c 100644 --- a/core/src/plugins/access.fs/test.fsAccess.php +++ b/core/src/plugins/access.fs/test.fsAccess.php @@ -20,7 +20,7 @@ */ namespace Pydio\Tests; -use Pydio\Access\Core\Model\Repository; + use Pydio\Core\Model\Context; defined('AJXP_EXEC') or die( 'Access not allowed'); diff --git a/core/src/plugins/access.ftp/class.ftpAccessDriver.php b/core/src/plugins/access.ftp/class.ftpAccessDriver.php index 04d09412a8..23b285fc78 100644 --- a/core/src/plugins/access.ftp/class.ftpAccessDriver.php +++ b/core/src/plugins/access.ftp/class.ftpAccessDriver.php @@ -30,7 +30,7 @@ use Pydio\Access\Driver\StreamProvider\FS\fsAccessDriver; use Pydio\Core\Http\Response\SerializableResponseStream; use Pydio\Core\Model\ContextInterface; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Controller\Controller; use Pydio\Core\Exception\PydioException; use Pydio\Core\Services\LocaleService; diff --git a/core/src/plugins/access.ftp/class.ftpAccessWrapper.php b/core/src/plugins/access.ftp/class.ftpAccessWrapper.php index 874d3d74f5..cefd5a6155 100644 --- a/core/src/plugins/access.ftp/class.ftpAccessWrapper.php +++ b/core/src/plugins/access.ftp/class.ftpAccessWrapper.php @@ -26,12 +26,12 @@ use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Auth\Core\AJXP_Safe; use Pydio\Core\Model\ContextInterface; -use Pydio\Core\Model\RepositoryInterface; -use Pydio\Core\Services\ConfService; + + use Pydio\Core\Exception\PydioException; use Pydio\Core\Services\SessionService; use Pydio\Core\Utils\Utils; -use Pydio\Core\Controller\XMLWriter; + use Pydio\Log\Core\AJXP_Logger; defined('AJXP_EXEC') or die( 'Access not allowed'); diff --git a/core/src/plugins/access.imap/class.imapAccessWrapper.php b/core/src/plugins/access.imap/class.imapAccessWrapper.php index 6fa2f2face..b765be8e14 100755 --- a/core/src/plugins/access.imap/class.imapAccessWrapper.php +++ b/core/src/plugins/access.imap/class.imapAccessWrapper.php @@ -23,7 +23,7 @@ use EmlParser; use Pydio\Access\Core\IAjxpWrapper; use Pydio\Access\Core\Model\AJXP_Node; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Utils\Utils; use Pydio\Core\Utils\TextEncoder; use Pydio\Log\Core\AJXP_Logger; @@ -466,12 +466,9 @@ public static function copyFileInStream($path, $stream) $fp = fopen($path, 'r'); $bufferSize = 4096 * 8; if ($fp) { - $i = 0; while (!feof($fp)) { $data = fread($fp, $bufferSize); fwrite($stream, $data, strlen($data)); - //if($i > 10) break; - //$i++; } fclose($fp); } diff --git a/core/src/plugins/access.inbox/class.inboxAccessDriver.php b/core/src/plugins/access.inbox/class.inboxAccessDriver.php index 3d7d88ff4a..6d8a4c6a02 100644 --- a/core/src/plugins/access.inbox/class.inboxAccessDriver.php +++ b/core/src/plugins/access.inbox/class.inboxAccessDriver.php @@ -28,7 +28,7 @@ use Pydio\Core\Model\Context; use Pydio\Core\Model\ContextInterface; use Pydio\Core\Services\AuthService; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Controller\Controller; use Pydio\Core\Services\LocaleService; use Pydio\Core\Services\UsersService; diff --git a/core/src/plugins/access.inbox/class.inboxAccessWrapper.php b/core/src/plugins/access.inbox/class.inboxAccessWrapper.php index 2f01073923..4db1c7a574 100644 --- a/core/src/plugins/access.inbox/class.inboxAccessWrapper.php +++ b/core/src/plugins/access.inbox/class.inboxAccessWrapper.php @@ -24,7 +24,7 @@ use Pydio\Access\Core\AJXP_MetaStreamWrapper; use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Access\Core\IAjxpWrapper; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Utils\Utils; defined('AJXP_EXEC') or die('Access not allowed'); diff --git a/core/src/plugins/access.jsapi/class.jsapiAccessDriver.php b/core/src/plugins/access.jsapi/class.jsapiAccessDriver.php index c466f6f2fa..768db7cbc4 100644 --- a/core/src/plugins/access.jsapi/class.jsapiAccessDriver.php +++ b/core/src/plugins/access.jsapi/class.jsapiAccessDriver.php @@ -25,7 +25,7 @@ use Pydio\Access\Core\AbstractAccessDriver; use Pydio\Core\Model\ContextInterface; use Pydio\Core\Utils\Utils; -use Pydio\Core\Controller\HTMLWriter; + use RecursiveDirectoryIterator; use RecursiveIteratorIterator; diff --git a/core/src/plugins/access.mysql/class.mysqlAccessDriver.php b/core/src/plugins/access.mysql/class.mysqlAccessDriver.php index 3e8da84877..c7ac04d310 100644 --- a/core/src/plugins/access.mysql/class.mysqlAccessDriver.php +++ b/core/src/plugins/access.mysql/class.mysqlAccessDriver.php @@ -24,7 +24,7 @@ use Pydio\Access\Core\Model\UserSelection; use Pydio\Core\Model\ContextInterface; use Pydio\Core\Exception\PydioException; -use Pydio\Core\Services\LocaleService; + use Pydio\Core\Utils\Utils; use Pydio\Core\Controller\XMLWriter; use Pydio\Core\Utils\TextEncoder; @@ -505,6 +505,7 @@ public function getColumnData($tableName, $columnName) return mysql_fetch_array($res); // ["Field", "Type", "Null", "Key", "Default", "Extra"] => Type is like "enum('a', 'b', 'c')" } + return []; } public function makeColumnDef($row, $prefix="", $suffix="") diff --git a/core/src/plugins/access.s3/class.s3AccessDriver.php b/core/src/plugins/access.s3/class.s3AccessDriver.php index ca7809132e..4c26d8979c 100755 --- a/core/src/plugins/access.s3/class.s3AccessDriver.php +++ b/core/src/plugins/access.s3/class.s3AccessDriver.php @@ -24,7 +24,7 @@ use DOMNode; use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Access\Core\RecycleBinManager; -use Pydio\Access\Core\Model\Repository; + use Pydio\Access\Driver\StreamProvider\FS\fsAccessDriver; use Pydio\Core\Model\ContextInterface; use Pydio\Core\Services\ConfService; diff --git a/core/src/plugins/access.s3/class.s3AccessWrapper.php b/core/src/plugins/access.s3/class.s3AccessWrapper.php index 8ec35fe851..878b5da35f 100755 --- a/core/src/plugins/access.s3/class.s3AccessWrapper.php +++ b/core/src/plugins/access.s3/class.s3AccessWrapper.php @@ -22,7 +22,7 @@ namespace Pydio\Access\Driver\StreamProvider\S3; use Pydio\Access\Core\Model\AJXP_Node; -use Pydio\Access\Core\Model\Repository; + use Pydio\Access\Driver\StreamProvider\FS\fsAccessWrapper; use Pydio\Core\Model\ContextInterface; use Pydio\Core\Services\ConfService; diff --git a/core/src/plugins/access.sftp/class.sftpAccessDriver.php b/core/src/plugins/access.sftp/class.sftpAccessDriver.php index bb0a4ca9f6..ac8764356f 100644 --- a/core/src/plugins/access.sftp/class.sftpAccessDriver.php +++ b/core/src/plugins/access.sftp/class.sftpAccessDriver.php @@ -34,7 +34,7 @@ use Pydio\Core\Controller\Controller; use Pydio\Core\Exception\PydioException; use Pydio\Core\Utils\Utils; -use Sabre\CalDAV\Principal\User; + defined('AJXP_EXEC') or die( 'Access not allowed'); diff --git a/core/src/plugins/access.sftp/class.sftpAccessWrapper.php b/core/src/plugins/access.sftp/class.sftpAccessWrapper.php index 62b895d276..32b56cb281 100644 --- a/core/src/plugins/access.sftp/class.sftpAccessWrapper.php +++ b/core/src/plugins/access.sftp/class.sftpAccessWrapper.php @@ -23,11 +23,11 @@ use Pydio\Access\Core\AbstractAccessDriver; use Pydio\Access\Core\Model\AJXP_Node; -use Pydio\Access\Core\Model\Repository; + use Pydio\Access\Driver\StreamProvider\FS\fsAccessWrapper; use Pydio\Auth\Core\AJXP_Safe; use Pydio\Core\Model\ContextInterface; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Utils\Utils; use Pydio\Log\Core\AJXP_Logger; @@ -92,7 +92,6 @@ class sftpAccessWrapper extends fsAccessWrapper */ protected static function initPath($path, $streamType="", $sftpResource = false, $skipZip = false) { - $url = Utils::safeParseUrl($path); $node = new AJXP_Node($path); $repoObject = $node->getRepository(); if(!isSet($repoObject)) { @@ -113,7 +112,7 @@ protected static function initPath($path, $streamType="", $sftpResource = false, $path = substr($path, 1); } // SHOULD RETURN ssh2.sftp://Resource #23/server/path/folder/path - return "ssh2.sftp://".self::getSftpResource($repoObject).$basePath."/".$path; + return "ssh2.sftp://".self::getSftpResource($ctx).$basePath."/".$path; } /** diff --git a/core/src/plugins/access.sftp_psl/class.sftpPSLAccessWrapper.php b/core/src/plugins/access.sftp_psl/class.sftpPSLAccessWrapper.php index 0918e0b3f2..533f1dbde5 100644 --- a/core/src/plugins/access.sftp_psl/class.sftpPSLAccessWrapper.php +++ b/core/src/plugins/access.sftp_psl/class.sftpPSLAccessWrapper.php @@ -24,10 +24,10 @@ use Net_SSH2; use Pydio\Access\Core\AbstractAccessDriver; use Pydio\Access\Core\Model\AJXP_Node; -use Pydio\Access\Core\Model\Repository; + use Pydio\Access\Driver\StreamProvider\FS\fsAccessWrapper; use Pydio\Auth\Core\AJXP_Safe; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Utils\Utils; use Pydio\Log\Core\AJXP_Logger; diff --git a/core/src/plugins/access.smb/class.smbAccessDriver.php b/core/src/plugins/access.smb/class.smbAccessDriver.php index cb1fabc018..6db84a42bc 100644 --- a/core/src/plugins/access.smb/class.smbAccessDriver.php +++ b/core/src/plugins/access.smb/class.smbAccessDriver.php @@ -22,17 +22,16 @@ namespace Pydio\Access\Driver\StreamProvider\SMB; use DOMNode; -use PclZip; -use Pydio\Access\Core\AJXP_MetaStreamWrapper; + + use Pydio\Access\Core\RecycleBinManager; use Pydio\Access\Core\Model\Repository; use Pydio\Access\Driver\StreamProvider\FS\fsAccessDriver; -use Pydio\Core\Model\Context; + use Pydio\Core\Model\ContextInterface; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Exception\PydioException; -use Pydio\Core\Utils\Utils; -use Pydio\Core\Utils\TextEncoder; + defined('AJXP_EXEC') or die( 'Access not allowed'); diff --git a/core/src/plugins/access.smb/class.smbAccessWrapper.php b/core/src/plugins/access.smb/class.smbAccessWrapper.php index 51015f0d7d..70af009aed 100644 --- a/core/src/plugins/access.smb/class.smbAccessWrapper.php +++ b/core/src/plugins/access.smb/class.smbAccessWrapper.php @@ -24,8 +24,8 @@ use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Access\Driver\StreamProvider\FS\fsAccessWrapper; use Pydio\Auth\Core\AJXP_Safe; -use Pydio\Core\Services\AuthService; -use Pydio\Core\Services\ConfService; + + use Pydio\Core\Utils\Utils; use Pydio\Core\Utils\VarsFilter; use Pydio\Log\Core\AJXP_Logger; diff --git a/core/src/plugins/access.swift/class.swiftAccessWrapper.php b/core/src/plugins/access.swift/class.swiftAccessWrapper.php index 990fc8b504..d8c68561cc 100644 --- a/core/src/plugins/access.swift/class.swiftAccessWrapper.php +++ b/core/src/plugins/access.swift/class.swiftAccessWrapper.php @@ -23,7 +23,7 @@ use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Access\Driver\StreamProvider\FS\fsAccessWrapper; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Utils\Utils; use Pydio\Log\Core\AJXP_Logger; @@ -136,8 +136,6 @@ public function url_stat($path, $flags) } return $stat; - // Non existing file - return null; } /** diff --git a/core/src/plugins/access.webdav/src/Driver.php b/core/src/plugins/access.webdav/src/Driver.php index f3438f4dc9..c99eea2ede 100644 --- a/core/src/plugins/access.webdav/src/Driver.php +++ b/core/src/plugins/access.webdav/src/Driver.php @@ -25,7 +25,7 @@ defined('AJXP_EXEC') or die( 'Access not allowed'); use Pydio\Access\Core\AJXP_MetaStreamWrapper; -use Pydio\Access\Core\Model\Repository; + use Pydio\Access\Driver\StreamProvider\FS\fsAccessDriver; use Pydio\Core\Model\ContextInterface; use Pydio\Core\Services\ConfService; diff --git a/core/src/plugins/action.antivirus/class.AntivirusScanner.php b/core/src/plugins/action.antivirus/class.AntivirusScanner.php index a2103fb9ea..d9863360d6 100644 --- a/core/src/plugins/action.antivirus/class.AntivirusScanner.php +++ b/core/src/plugins/action.antivirus/class.AntivirusScanner.php @@ -138,11 +138,11 @@ private function callSet($nodeObject) { $this->setPath($nodeObject); $this->setFileExtension($nodeObject); - $this->setExtensionScan(); - $this->setScanDiffFolder (); - $this->setScanMaxSize (); + $this->setExtensionScan($nodeObject); + $this->setScanDiffFolder($nodeObject); + $this->setScanMaxSize($nodeObject); $this->setFileSize($nodeObject); - $this->setScanAll(); + $this->setScanAll($nodeObject); //debug option, put in a file attribute values if (self::DEBUG_ON == 1) { diff --git a/core/src/plugins/action.avatar/class.AvatarProvider.php b/core/src/plugins/action.avatar/class.AvatarProvider.php index 06fd0e3044..fe730d5c60 100644 --- a/core/src/plugins/action.avatar/class.AvatarProvider.php +++ b/core/src/plugins/action.avatar/class.AvatarProvider.php @@ -19,7 +19,7 @@ * The latest code can be found at . */ -use Pydio\Core\Services\AuthService; + use Pydio\Core\Services\ConfService; use Pydio\Core\PluginFramework\Plugin; use Pydio\Core\Services\UsersService; diff --git a/core/src/plugins/action.compression/class.PluginCompression.php b/core/src/plugins/action.compression/class.PluginCompression.php index cf5b0f0943..eba36e5b49 100755 --- a/core/src/plugins/action.compression/class.PluginCompression.php +++ b/core/src/plugins/action.compression/class.PluginCompression.php @@ -22,14 +22,14 @@ use Pydio\Access\Core\AJXP_MetaStreamWrapper; use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Access\Core\Model\UserSelection; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Controller\Controller; use Pydio\Core\Exception\PydioException; use Pydio\Core\Services\LocaleService; use Pydio\Core\Utils\Utils; -use Pydio\Core\Http\Message\BgActionTrigger; + use Pydio\Core\PluginFramework\Plugin; -use Pydio\Core\Utils\TextEncoder; + use Pydio\Access\Core\Model\NodesDiff; use Pydio\Tasks\Task; use Pydio\Tasks\TaskService; diff --git a/core/src/plugins/action.powerfs/class.PowerFSController.php b/core/src/plugins/action.powerfs/class.PowerFSController.php index 5b04c66a2f..29f25b0a95 100644 --- a/core/src/plugins/action.powerfs/class.PowerFSController.php +++ b/core/src/plugins/action.powerfs/class.PowerFSController.php @@ -21,7 +21,7 @@ use Pydio\Access\Core\Model\UserSelection; use Pydio\Access\Driver\StreamProvider\FS\fsAccessWrapper; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Controller\Controller; use Pydio\Core\Services\LocaleService; use Pydio\Core\Utils\Utils; @@ -75,8 +75,7 @@ public function switchAction(ServerRequestInterface &$request, ResponseInterface case "postcompress_download": $archive = Utils::getAjxpTmpDir().DIRECTORY_SEPARATOR.$httpVars["ope_id"]."_".Utils::sanitize(Utils::decodeSecureMagic($httpVars["archive_name"]), AJXP_SANITIZE_FILENAME); - /** @var \Pydio\Access\Driver\StreamProvider\FS\fsAccessDriver $fsDriver */ - $fsDriver = PluginsService::getInstance($ctx)->getUniqueActivePluginForType("access"); + $archiveName = $httpVars["archive_name"]; if (is_file($archive)) { $fileReader = new \Pydio\Core\Http\Response\FileReaderResponse($archive); diff --git a/core/src/plugins/action.scheduler/class.AjxpScheduler.php b/core/src/plugins/action.scheduler/class.AjxpScheduler.php index 1ba9e38f85..d5d0e5cf2d 100755 --- a/core/src/plugins/action.scheduler/class.AjxpScheduler.php +++ b/core/src/plugins/action.scheduler/class.AjxpScheduler.php @@ -22,7 +22,7 @@ use Pydio\Core\Controller\CliRunner; use Pydio\Core\Model\ContextInterface; use Pydio\Core\Services\ConfService; -use Pydio\Core\Controller\Controller; + use Pydio\Core\Services\LocaleService; use Pydio\Core\Services\RepositoryService; use Pydio\Core\Services\UsersService; diff --git a/core/src/plugins/action.share/src/Legacy/LegacyPubliclet.php b/core/src/plugins/action.share/src/Legacy/LegacyPubliclet.php index 94a84063ee..e0c1ef7806 100644 --- a/core/src/plugins/action.share/src/Legacy/LegacyPubliclet.php +++ b/core/src/plugins/action.share/src/Legacy/LegacyPubliclet.php @@ -28,15 +28,15 @@ use Pydio\Access\Core\Model\Repository; use Pydio\Access\Core\Model\UserSelection; use Pydio\Core\Model\ContextInterface; -use Pydio\Core\Services\AuthService; + use Pydio\Core\Services\ConfService; -use Pydio\Core\Controller\Controller; + use Pydio\Core\PluginFramework\PluginsService; use Pydio\Core\Services\LocaleService; use Pydio\Core\Services\RepositoryService; use Pydio\Core\Services\UsersService; use Pydio\Core\Utils\TextEncoder; -use Pydio\Log\Core\AJXP_Logger; + use Pydio\Share\Model\ShareLink; use Pydio\Share\ShareCenter; use Pydio\Share\Store\ShareRightsManager; @@ -264,7 +264,7 @@ public static function migrateLegacyMeta(ContextInterface $ctx, $shareCenter, $s print("\n-- Should save following LINK: "); print_r($link->getJsonData($shareCenter->getPublicAccessManager(), LocaleService::getMessages())); if(!$dryRun){ - $hash = $link->save(); + $link->save(); } // UPDATE METADATA diff --git a/core/src/plugins/action.share/src/Model/CompositeShare.php b/core/src/plugins/action.share/src/Model/CompositeShare.php index 85f6cbfbad..77df2f46ec 100644 --- a/core/src/plugins/action.share/src/Model/CompositeShare.php +++ b/core/src/plugins/action.share/src/Model/CompositeShare.php @@ -24,8 +24,8 @@ use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Access\Core\Model\Repository; use Pydio\Core\Model\ContextInterface; -use Pydio\Core\Services\AuthService; -use Pydio\Core\Services\ConfService; + + use Pydio\Core\Services\RepositoryService; use Pydio\Core\Services\UsersService; use Pydio\Core\Utils\Utils; diff --git a/core/src/plugins/action.share/src/Model/ShareLink.php b/core/src/plugins/action.share/src/Model/ShareLink.php index 94a319d7c6..817137525a 100644 --- a/core/src/plugins/action.share/src/Model/ShareLink.php +++ b/core/src/plugins/action.share/src/Model/ShareLink.php @@ -20,7 +20,7 @@ */ namespace Pydio\Share\Model; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Services\LocaleService; use Pydio\Core\Services\RepositoryService; use Pydio\Core\Utils\Utils; diff --git a/core/src/plugins/action.share/src/ShareCenter.php b/core/src/plugins/action.share/src/ShareCenter.php index 4a33c32575..f941e35565 100644 --- a/core/src/plugins/action.share/src/ShareCenter.php +++ b/core/src/plugins/action.share/src/ShareCenter.php @@ -31,7 +31,6 @@ use Pydio\Access\Core\Model\NodesList; use Pydio\Access\Core\Model\Repository; use Pydio\Access\Core\Model\UserSelection; -use Pydio\Core\Controller\CliRunner; use Pydio\Core\Http\Message\UserMessage; use Pydio\Core\Http\Response\SerializableResponseStream; use Pydio\Core\Model\Context; @@ -295,7 +294,7 @@ public function getShareStore(){ $hMin = $this->getContextualOption($this->currentContext, "HASH_MIN_LENGTH"); } $this->shareStore = new ShareStore( - isSet($this->currentContext) ? $this->currentContext : Context::fromGlobalServices(), + $this->currentContext, ConfService::getCoreConf("PUBLIC_DOWNLOAD_FOLDER"), $hMin ); @@ -343,7 +342,7 @@ protected function getRightsManager(){ ); } $this->rightsManager = new ShareRightsManager( - isSet($this->currentContext) ? $this->currentContext : Context::fromGlobalServices(), + $this->currentContext, $options, $this->getShareStore(), $this->watcher); diff --git a/core/src/plugins/action.share/src/Store/ShareMetaManager.php b/core/src/plugins/action.share/src/Store/ShareMetaManager.php index 6b12c3e903..b4bb509c0e 100644 --- a/core/src/plugins/action.share/src/Store/ShareMetaManager.php +++ b/core/src/plugins/action.share/src/Store/ShareMetaManager.php @@ -21,7 +21,7 @@ namespace Pydio\Share\Store; use Pydio\Access\Core\Model\AJXP_Node; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Services\RepositoryService; use Pydio\Share\Model\CompositeShare; diff --git a/core/src/plugins/action.share/src/Store/ShareRightsManager.php b/core/src/plugins/action.share/src/Store/ShareRightsManager.php index 036494e8e0..dc11da951e 100644 --- a/core/src/plugins/action.share/src/Store/ShareRightsManager.php +++ b/core/src/plugins/action.share/src/Store/ShareRightsManager.php @@ -26,7 +26,7 @@ use Pydio\Access\Core\Model\Repository; use Pydio\Core\Model\ContextInterface; use Pydio\Core\Model\UserInterface; -use Pydio\Core\Services\AuthService; + use Pydio\Conf\Core\AbstractAjxpUser; use Pydio\Conf\Core\AJXP_Role; use Pydio\Core\Services\ConfService; @@ -561,7 +561,7 @@ public function createNewUser($parentUser, $userName, $password, $isHidden, $dis /** - * @param AbstractAjxpUser $parentUser + * @param UserInterface $parentUser * @param string $parentRepoId * @param AJXP_Node $ajxpNode * @return AJXP_PermissionMask|null @@ -569,8 +569,8 @@ public function createNewUser($parentUser, $userName, $password, $isHidden, $dis public function forkMaskIfAny($parentUser, $parentRepoId, $ajxpNode){ $file = $ajxpNode->getPath(); - if($file != "/" && $parentUser->mergedRole->hasMask($parentRepoId)){ - $parentTree = $parentUser->mergedRole->getMask($parentRepoId)->getTree(); + if($file != "/" && $parentUser->getMergedRole()->hasMask($parentRepoId)){ + $parentTree = $parentUser->getMergedRole()->getMask($parentRepoId)->getTree(); // Try to find a branch on the current selection $parts = explode("/", trim($file, "/")); while( ($next = array_shift($parts)) !== null){ diff --git a/core/src/plugins/action.share/src/Store/ShareStore.php b/core/src/plugins/action.share/src/Store/ShareStore.php index 96a934dcc1..e8af4568da 100644 --- a/core/src/plugins/action.share/src/Store/ShareStore.php +++ b/core/src/plugins/action.share/src/Store/ShareStore.php @@ -20,15 +20,15 @@ */ namespace Pydio\Share\Store; -use Pydio\Access\Core\AbstractAccessDriver; + use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Access\Core\Model\Repository; -use Pydio\Auth\Core\AJXP_Safe; + use Pydio\Core\Model\ContextInterface; use Pydio\Core\Services\AuthService; use Pydio\Core\Services\ConfService; use Pydio\Conf\Sql\sqlConfDriver; -use Pydio\Core\Controller\Controller; + use Pydio\Core\Services\LocaleService; use Pydio\Core\Services\RepositoryService; use Pydio\Core\Services\RolesService; diff --git a/core/src/plugins/action.timestamp/class.TimestampCreator.php b/core/src/plugins/action.timestamp/class.TimestampCreator.php index e5a1ff0d85..41ab46bd77 100644 --- a/core/src/plugins/action.timestamp/class.TimestampCreator.php +++ b/core/src/plugins/action.timestamp/class.TimestampCreator.php @@ -7,9 +7,9 @@ use Pydio\Access\Core\AJXP_MetaStreamWrapper; use Pydio\Access\Core\Model\UserSelection; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Exception\PydioException; -use Pydio\Core\Controller\XMLWriter; + use Pydio\Core\PluginFramework\Plugin; use Pydio\Core\Services\LocaleService; diff --git a/core/src/plugins/action.updater/class.AjaXplorerUpgrader.php b/core/src/plugins/action.updater/class.AjaXplorerUpgrader.php index d2538af5ec..a05dc11dbf 100644 --- a/core/src/plugins/action.updater/class.AjaXplorerUpgrader.php +++ b/core/src/plugins/action.updater/class.AjaXplorerUpgrader.php @@ -328,54 +328,56 @@ public function cleanUnusedFiles() public function upgradeDB() { $confDriver = ConfService::getConfStorageImpl(); - if ($confDriver instanceof \Pydio\Conf\Sql\sqlConfDriver) { - $conf = Utils::cleanDibiDriverParameters($confDriver->getOption("SQL_DRIVER")); - if(!is_array($conf) || !isSet($conf["driver"])) return "Nothing to do"; - switch ($conf["driver"]) { - case "sqlite": - case "sqlite3": - $ext = ".sqlite"; - break; - case "postgre": - $ext = ".pgsql"; - break; - case "mysql": - $ext = (is_file($this->workingFolder."/".$this->dbUpgrade.".mysql")) ? ".mysql" : ".sql"; - break; - default: - return "ERROR!, DB driver ". $conf["driver"] ." not supported yet in __FUNCTION__"; - } - - $file = $this->dbUpgrade.$ext; - if(!is_file($this->workingFolder."/".$file)) return "Nothing to do."; - $sqlInstructions = file_get_contents($this->workingFolder."/".$file); - - $parts = array_map("trim", explode("/* SEPARATOR */", $sqlInstructions)); - $results = array(); - $errors = array(); - - dibi::connect($conf); - dibi::begin(); - foreach ($parts as $sqlPart) { - if(empty($sqlPart)) continue; - try { - dibi::nativeQuery($sqlPart); - $results[] = $sqlPart; - } catch (DibiException $e) { - $errors[] = $sqlPart. " (". $e->getMessage().")"; - } - } - dibi::commit(); - dibi::disconnect(); - - if (!count($errors)) { - return "Database successfully upgraded"; - } else { - return "Database upgrade failed.
The following statements were executed :
".implode("
", $results).",

The following statements failed :
".implode("
", $errors)."

You should manually upgrade your DB."; + if (!$confDriver instanceof \Pydio\Conf\Sql\sqlConfDriver) { + return ""; + } + + $conf = Utils::cleanDibiDriverParameters($confDriver->getOption("SQL_DRIVER")); + if(!is_array($conf) || !isSet($conf["driver"])) return "Nothing to do"; + switch ($conf["driver"]) { + case "sqlite": + case "sqlite3": + $ext = ".sqlite"; + break; + case "postgre": + $ext = ".pgsql"; + break; + case "mysql": + $ext = (is_file($this->workingFolder."/".$this->dbUpgrade.".mysql")) ? ".mysql" : ".sql"; + break; + default: + return "ERROR!, DB driver ". $conf["driver"] ." not supported yet in __FUNCTION__"; + } + + $file = $this->dbUpgrade.$ext; + if(!is_file($this->workingFolder."/".$file)) return "Nothing to do."; + $sqlInstructions = file_get_contents($this->workingFolder."/".$file); + + $parts = array_map("trim", explode("/* SEPARATOR */", $sqlInstructions)); + $results = array(); + $errors = array(); + + dibi::connect($conf); + dibi::begin(); + foreach ($parts as $sqlPart) { + if(empty($sqlPart)) continue; + try { + dibi::nativeQuery($sqlPart); + $results[] = $sqlPart; + } catch (DibiException $e) { + $errors[] = $sqlPart. " (". $e->getMessage().")"; } + } + dibi::commit(); + dibi::disconnect(); + if (!count($errors)) { + return "Database successfully upgraded"; + } else { + return "Database upgrade failed.
The following statements were executed :
".implode("
", $results).",

The following statements failed :
".implode("
", $errors)."

You should manually upgrade your DB."; } + } public function specificTask() @@ -432,6 +434,7 @@ public function displayUpgradeInstructions()

Upgrade report

"; } + return ""; } /** diff --git a/core/src/plugins/auth.ftp/class.ftpAuthDriver.php b/core/src/plugins/auth.ftp/class.ftpAuthDriver.php index c9948a9087..f8838bbb4c 100644 --- a/core/src/plugins/auth.ftp/class.ftpAuthDriver.php +++ b/core/src/plugins/auth.ftp/class.ftpAuthDriver.php @@ -24,7 +24,7 @@ use Pydio\Core\Model\ContextInterface; use Pydio\Core\Services\AuthService; use Pydio\Core\Services\ConfService; -use Pydio\Core\Controller\XMLWriter; + use Pydio\Core\PluginFramework\PluginsService; defined('AJXP_EXEC') or die( 'Access not allowed'); diff --git a/core/src/plugins/auth.multi/class.multiAuthDriver.php b/core/src/plugins/auth.multi/class.multiAuthDriver.php index e904a11d31..3ad6e3eafc 100644 --- a/core/src/plugins/auth.multi/class.multiAuthDriver.php +++ b/core/src/plugins/auth.multi/class.multiAuthDriver.php @@ -20,7 +20,7 @@ */ use Pydio\Auth\Core\AbstractAuthDriver; use Pydio\Core\Model\ContextInterface; -use Pydio\Core\Services\AuthService; + use Pydio\Core\PluginFramework\PluginsService; defined('AJXP_EXEC') or die( 'Access not allowed'); diff --git a/core/src/plugins/auth.remote/class.remoteAuthDriver.php b/core/src/plugins/auth.remote/class.remoteAuthDriver.php index c945d72cdb..d44389bb79 100644 --- a/core/src/plugins/auth.remote/class.remoteAuthDriver.php +++ b/core/src/plugins/auth.remote/class.remoteAuthDriver.php @@ -259,7 +259,7 @@ public function createUser($login, $passwd) if(UsersService::ignoreUserCase()) $login = strtolower($login); $users = $this->listUsers(); if(!is_array($users)) $users = array(); - if(array_key_exists($login, $users)) return "exists"; + if(array_key_exists($login, $users)) return; if ($this->getOptionAsBool("TRANSMIT_CLEAR_PASS")) { $users[$login] = Utils::pbkdf2_create_hash($passwd); } else { diff --git a/core/src/plugins/auth.remote/cms_auth_functions.php b/core/src/plugins/auth.remote/cms_auth_functions.php index 4f92391a14..ee14a84d41 100644 --- a/core/src/plugins/auth.remote/cms_auth_functions.php +++ b/core/src/plugins/auth.remote/cms_auth_functions.php @@ -81,12 +81,14 @@ function joomla_remote_auth($host, $uri, $login, $pass, $formId = "") "Submit" => "Log in", "remember" => "yes" ); - $xmlDoc = @DOMDocument::loadHTML($content); + $xmlDoc = new DOMDocument(); + $xmlDoc->loadHTML($content); if ($xmlDoc === false) { $pos1 = strpos($content, "
", $pos1); - $content = substr($content, $pos1, $pos2 + "7" - $pos1); - $xmlDoc = @DOMDocument::loadHTML($content); + $content = substr($content, $pos1, $pos2 + 7 - $pos1); + $xmlDoc = new DOMDocument(); + $xmlDoc->loadHTML($content); } if ($xmlDoc !== false) { $xPath = new DOMXPath($xmlDoc); @@ -129,7 +131,8 @@ function drupal_remote_auth($host, $uri, $login, $pass, $formId = "") $client->setHandleRedirects(false); $client->get($uri); $content = $client->getContent(); - $xmlDoc = DOMDocument::loadHTML($content); + $xmlDoc = new DOMDocument(); + $xmlDoc->loadHTML($content); $xPath = new DOMXPath($xmlDoc); if($formId == "") $formId = "user-login-form"; $nodes = $xPath->query('//form[@id="'.$formId.'"]'); diff --git a/core/src/plugins/auth.remote/sessionSwitcher.php b/core/src/plugins/auth.remote/sessionSwitcher.php index 7fd57850ef..b506591608 100644 --- a/core/src/plugins/auth.remote/sessionSwitcher.php +++ b/core/src/plugins/auth.remote/sessionSwitcher.php @@ -18,6 +18,8 @@ * * The latest code can be found at . */ +use Pydio\Log\Core\AJXP_Logger; + defined('AJXP_EXEC') or die( 'Access not allowed'); /** diff --git a/core/src/plugins/auth.smb/class.smbAuthDriver.php b/core/src/plugins/auth.smb/class.smbAuthDriver.php index 3abc876042..46d0355ebf 100644 --- a/core/src/plugins/auth.smb/class.smbAuthDriver.php +++ b/core/src/plugins/auth.smb/class.smbAuthDriver.php @@ -21,7 +21,7 @@ use Pydio\Auth\Core\AbstractAuthDriver; use Pydio\Auth\Core\AJXP_Safe; use Pydio\Core\Services\AuthService; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Services\RepositoryService; defined('AJXP_EXEC') or die( 'Access not allowed'); @@ -74,7 +74,7 @@ public function checkPassword($login, $pass, $seed) $repoId = $this->options["REPOSITORY_ID"]; $repoObject = RepositoryService::getRepositoryById($repoId); if(!isSet($repoObject)) throw new Exception("Cannot find repository with id ".$repoId); - $path = ""; + $basePath = $repoObject->getSafeOption("PATH"); $basePath = str_replace("AJXP_USER", $login, $basePath); $host = $repoObject->getSafeOption("HOST"); diff --git a/core/src/plugins/auth.sql/class.sqlAuthDriver.php b/core/src/plugins/auth.sql/class.sqlAuthDriver.php index ad42a3bad7..99e1be6177 100644 --- a/core/src/plugins/auth.sql/class.sqlAuthDriver.php +++ b/core/src/plugins/auth.sql/class.sqlAuthDriver.php @@ -196,7 +196,7 @@ public function passwordsEditable() public function createUser($login, $passwd) { - if($this->userExists($login)) return "exists"; + if($this->userExists($login)) return; $userData = array("login" => $login); if ($this->getOptionAsBool("TRANSMIT_CLEAR_PASS")) { $userData["password"] = Utils::pbkdf2_create_hash($passwd); //md5($passwd); diff --git a/core/src/plugins/authfront.cyphered/class.CypheredAuthFrontend.php b/core/src/plugins/authfront.cyphered/class.CypheredAuthFrontend.php index 498a4ce605..33639520ca 100644 --- a/core/src/plugins/authfront.cyphered/class.CypheredAuthFrontend.php +++ b/core/src/plugins/authfront.cyphered/class.CypheredAuthFrontend.php @@ -20,7 +20,7 @@ */ use Pydio\Core\Services\AuthService; use Pydio\Authfront\Core\AbstractAuthFrontend; -use Pydio\Core\Services\ConfService; + defined('AJXP_EXEC') or die( 'Access not allowed'); diff --git a/core/src/plugins/authfront.keystore/class.KeystoreAuthFrontend.php b/core/src/plugins/authfront.keystore/class.KeystoreAuthFrontend.php index ff350e1861..a4960c2025 100755 --- a/core/src/plugins/authfront.keystore/class.KeystoreAuthFrontend.php +++ b/core/src/plugins/authfront.keystore/class.KeystoreAuthFrontend.php @@ -87,7 +87,7 @@ function tryToLogUser(\Psr\Http\Message\ServerRequestInterface &$request, \Psr\H } - public function revokeUserTokens($userId){ + public function revokeUserTokens(\Pydio\Core\Model\ContextInterface $ctx, $userId){ $this->storage = ConfService::getConfStorageImpl(); if(!($this->storage instanceof \Pydio\Conf\Sql\sqlConfDriver)) return false; diff --git a/core/src/plugins/boot.conf/class.BootConfLoader.php b/core/src/plugins/boot.conf/class.BootConfLoader.php index b0cd15926e..421764516e 100644 --- a/core/src/plugins/boot.conf/class.BootConfLoader.php +++ b/core/src/plugins/boot.conf/class.BootConfLoader.php @@ -691,6 +691,7 @@ public function deleteBinary($context, $ID) { * * @param String $userId * @param array $deletedSubUsers + * @return array */ public function deleteUser($userId, &$deletedSubUsers) { return array(); diff --git a/core/src/plugins/conf.serial/class.AJXP_SerialUser.php b/core/src/plugins/conf.serial/class.AJXP_SerialUser.php index 8de630a442..a51c6fb256 100644 --- a/core/src/plugins/conf.serial/class.AJXP_SerialUser.php +++ b/core/src/plugins/conf.serial/class.AJXP_SerialUser.php @@ -93,6 +93,7 @@ public function setGroupPath($groupPath, $update = false) public function __wakeup() { $this->registerForSave = array(); + parent::__wakeup(); } public function getStoragePath() diff --git a/core/src/plugins/conf.serial/class.serialConfDriver.php b/core/src/plugins/conf.serial/class.serialConfDriver.php index c5242af792..6c0bc9a5af 100644 --- a/core/src/plugins/conf.serial/class.serialConfDriver.php +++ b/core/src/plugins/conf.serial/class.serialConfDriver.php @@ -650,7 +650,7 @@ public function loadBinary($context, $ID, $outputStream = null) * @param String $keyType * @param String $keyId * @param String $userId - * @param Array $data + * @param array $data * @return boolean */ public function saveTemporaryKey($keyType, $keyId, $userId, $data) diff --git a/core/src/plugins/conf.sql/class.AJXP_SqlUser.php b/core/src/plugins/conf.sql/class.AJXP_SqlUser.php index b4d1585a04..ead75f5bef 100755 --- a/core/src/plugins/conf.sql/class.AJXP_SqlUser.php +++ b/core/src/plugins/conf.sql/class.AJXP_SqlUser.php @@ -474,6 +474,7 @@ public function load() * Save user rights, preferences and bookmarks. * @param String $context * @see AbstractAjxpUser#save() + * @return mixed|void */ protected function _save($context = "superuser") { @@ -545,6 +546,7 @@ public function getTemporaryData($key) * * @param string $key String key of data to save. * @param mixed $value Value to save + * @return mixed|void */ public function saveTemporaryData($key, $value) { diff --git a/core/src/plugins/conf.sql/class.sqlConfDriver.php b/core/src/plugins/conf.sql/class.sqlConfDriver.php index 987501ac8b..b1b9d69f48 100644 --- a/core/src/plugins/conf.sql/class.sqlConfDriver.php +++ b/core/src/plugins/conf.sql/class.sqlConfDriver.php @@ -25,13 +25,14 @@ use Pydio\Access\Core\Model\Repository; use Pydio\Core\Controller\HTMLWriter; use Pydio\Core\Exception\DBConnectionException; +use Pydio\Core\Exception\PydioException; use Pydio\Core\Model\ContextInterface; use Pydio\Core\Model\UserInterface; use Pydio\Conf\Core\AbstractAjxpUser; use Pydio\Conf\Core\AbstractConfDriver; use Pydio\Conf\Core\AJXP_Role; use Pydio\Conf\Core\AjxpRole; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Services\RepositoryService; use Pydio\Core\Services\UsersService; use Pydio\Core\Utils\Utils; @@ -685,6 +686,7 @@ public function countUsersForRepository(ContextInterface $ctx, $repositoryId, $d * Instantiate the right class * * @param AbstractAjxpUser $userId + * @return AbstractAjxpUser|AJXP_SqlUser */ public function instantiateAbstractUserImpl($userId) { @@ -738,6 +740,8 @@ public function listRoles($roleIds = array(), $excludeReserved = false) /** * @param AJXP_Role[] $roles + * @return void + * @throws PydioException */ public function saveRoles($roles) { @@ -763,14 +767,16 @@ public function saveRoles($roles) ); break; default: - return "ERROR!, DB driver " . $this->sqlDriver["driver"] . " not supported yet in __FUNCTION__"; + throw new PydioException("ERROR!, DB driver " . $this->sqlDriver["driver"] . " not supported yet in __FUNCTION__"); } } } /** * @param AJXP_Role $role + * @param null $userObject * @return string|void + * @throws PydioException */ public function updateRole($role, $userObject = null) { @@ -793,7 +799,7 @@ public function updateRole($role, $userObject = null) dibi::query("INSERT INTO [ajxp_roles] ([role_id],[serial_role],[last_updated]) VALUES (%s, %s, %i) ON DUPLICATE KEY UPDATE [serial_role]=VALUES([serial_role]), [last_updated]=VALUES([last_updated])", $role->getId(), serialize($role), time()); break; default: - return "ERROR!, DB driver ". $this->sqlDriver["driver"] ." not supported yet in __FUNCTION__"; + throw new PydioException("ERROR!, DB driver ". $this->sqlDriver["driver"] ." not supported yet in __FUNCTION__"); } } diff --git a/core/src/plugins/core.access/src/AJXP_MetaStreamWrapper.php b/core/src/plugins/core.access/src/AJXP_MetaStreamWrapper.php index 1fdedf4286..e68f3b7cea 100644 --- a/core/src/plugins/core.access/src/AJXP_MetaStreamWrapper.php +++ b/core/src/plugins/core.access/src/AJXP_MetaStreamWrapper.php @@ -24,7 +24,7 @@ use Pydio\Access\Core\Filter\ContentFilter; use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Core\Model\ContextInterface; -use Pydio\Core\Model\RepositoryInterface; + use Pydio\Core\PluginFramework\PluginsService; use Pydio\Core\Services\RepositoryService; @@ -202,7 +202,7 @@ protected static function findSubWrapperClassName($url){ return self::findWrapperClassName(AJXP_Node::contextFromUrl($url), $nextScheme, $context); } - /** @param $node AJXP_Node */ + /** @var $node AJXP_Node */ protected static function actualRepositoryWrapperData(AJXP_Node $node){ $repositoryId = $node->getRepositoryId(); if(isSet(self::$cachedRepositoriesWrappers[$repositoryId])){ diff --git a/core/src/plugins/core.access/src/AbstractAccessDriver.php b/core/src/plugins/core.access/src/AbstractAccessDriver.php index 933ca218df..51c241955e 100644 --- a/core/src/plugins/core.access/src/AbstractAccessDriver.php +++ b/core/src/plugins/core.access/src/AbstractAccessDriver.php @@ -28,7 +28,7 @@ use Pydio\Core\Model\ContextInterface; use Pydio\Core\Controller\Controller; use Pydio\Core\Services\LocaleService; -use Pydio\Core\Services\RepositoryService; + use Pydio\Core\Services\UsersService; use Pydio\Core\Utils\Utils; use Pydio\Core\PluginFramework\Plugin; diff --git a/core/src/plugins/core.access/src/Filter/AJXP_PermissionMask.php b/core/src/plugins/core.access/src/Filter/AJXP_PermissionMask.php index ccf1047747..da6ea3ace4 100644 --- a/core/src/plugins/core.access/src/Filter/AJXP_PermissionMask.php +++ b/core/src/plugins/core.access/src/Filter/AJXP_PermissionMask.php @@ -253,7 +253,7 @@ public function flattenTree($tree = null, &$pathes = null, $currentRoot=""){ * @param $permissionTree * @param $level */ - public function toStr($permissionTree, $level) + public function toStr($permissionTree, &$level) { $level = $level + 1; foreach ($permissionTree as $key => $node) { diff --git a/core/src/plugins/core.access/src/Filter/ContentFilter.php b/core/src/plugins/core.access/src/Filter/ContentFilter.php index f379d9b242..e0e99b5f5b 100644 --- a/core/src/plugins/core.access/src/Filter/ContentFilter.php +++ b/core/src/plugins/core.access/src/Filter/ContentFilter.php @@ -22,7 +22,6 @@ use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Access\Core\Model\UserSelection; -use Pydio\Core\Utils\Utils; use Pydio\Core\Utils\TextEncoder; defined('AJXP_EXEC') or die( 'Access not allowed'); diff --git a/core/src/plugins/core.access/src/Model/AJXP_Node.php b/core/src/plugins/core.access/src/Model/AJXP_Node.php index c0a5225a0d..a159ade2f2 100644 --- a/core/src/plugins/core.access/src/Model/AJXP_Node.php +++ b/core/src/plugins/core.access/src/Model/AJXP_Node.php @@ -29,8 +29,8 @@ use Pydio\Core\Model\ContextProviderInterface; use Pydio\Core\Model\RepositoryInterface; use Pydio\Core\Model\UserInterface; -use Pydio\Core\Services\AuthService; -use Pydio\Core\Services\ConfService; + + use Pydio\Core\Controller\Controller; use Pydio\Core\PluginFramework\PluginsService; use Pydio\Core\Services\RepositoryService; diff --git a/core/src/plugins/core.access/src/Model/NodesDiff.php b/core/src/plugins/core.access/src/Model/NodesDiff.php index 047cb96e49..0d800845af 100644 --- a/core/src/plugins/core.access/src/Model/NodesDiff.php +++ b/core/src/plugins/core.access/src/Model/NodesDiff.php @@ -23,7 +23,7 @@ use Pydio\Core\Controller\XMLWriter; use Pydio\Core\Http\Response\JSONSerializableResponseChunk; use Pydio\Core\Http\Response\XMLSerializableResponseChunk; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Services\LocaleService; use Pydio\Core\Utils\Utils; diff --git a/core/src/plugins/core.access/src/Model/Repository.php b/core/src/plugins/core.access/src/Model/Repository.php index 1150c87bfd..c8a29bb305 100644 --- a/core/src/plugins/core.access/src/Model/Repository.php +++ b/core/src/plugins/core.access/src/Model/Repository.php @@ -26,9 +26,8 @@ use Pydio\Core\Model\Context; use Pydio\Core\Model\ContextInterface; use Pydio\Core\Model\RepositoryInterface; -use Pydio\Core\Services\AuthService; -use Pydio\Conf\Core\AjxpGroupPathProvider; -use Pydio\Core\Services\ConfService; + + use Pydio\Core\Services\LocaleService; use Pydio\Core\Services\RepositoryService; use Pydio\Core\Utils\VarsFilter; diff --git a/core/src/plugins/core.access/src/Model/UserSelection.php b/core/src/plugins/core.access/src/Model/UserSelection.php index 4af59a9a74..a7b78a5274 100644 --- a/core/src/plugins/core.access/src/Model/UserSelection.php +++ b/core/src/plugins/core.access/src/Model/UserSelection.php @@ -20,13 +20,13 @@ */ namespace Pydio\Access\Core\Model; -use Pydio\Access\Core\Model\AJXP_Node; -use Pydio\Access\Core\Model\Repository; + + use Pydio\Core\Model\Context; use Pydio\Core\Model\ContextInterface; use Pydio\Core\Model\RepositoryInterface; use Pydio\Core\Model\UserInterface; -use Pydio\Core\Services\AuthService; + use Pydio\Core\Utils\Utils; defined('AJXP_EXEC') or die( 'Access not allowed'); diff --git a/core/src/plugins/core.access/src/Stream/AuthWrapper.php b/core/src/plugins/core.access/src/Stream/AuthWrapper.php index 339901f5dd..e9e3c44b14 100644 --- a/core/src/plugins/core.access/src/Stream/AuthWrapper.php +++ b/core/src/plugins/core.access/src/Stream/AuthWrapper.php @@ -15,7 +15,6 @@ use Pydio\Auth\Core\AJXP_Safe; use Pydio\Core\Services\RepositoryService; use Pydio\Core\Utils\Utils; -use Pydio\Core\Services\ConfService; class AuthWrapper extends AJXP_SchemeTranslatorWrapper { diff --git a/core/src/plugins/core.cache/class.AbstractCacheDriver.php b/core/src/plugins/core.cache/class.AbstractCacheDriver.php index dd09a118c7..dd48361453 100644 --- a/core/src/plugins/core.cache/class.AbstractCacheDriver.php +++ b/core/src/plugins/core.cache/class.AbstractCacheDriver.php @@ -27,8 +27,8 @@ use Doctrine\Common\Cache; use Pydio\Access\Core\Model\AJXP_Node; -use Pydio\Core\Model\ContextInterface; -use Pydio\Core\Services\AuthService; + + use Pydio\Core\PluginFramework\Plugin; use Pydio\Plugins\Cache\Doctrine\Ext\PatternClearableCache; diff --git a/core/src/plugins/core.cache/class.CacheStreamLayer.php b/core/src/plugins/core.cache/class.CacheStreamLayer.php index 972c8d7300..677abdd2e2 100644 --- a/core/src/plugins/core.cache/class.CacheStreamLayer.php +++ b/core/src/plugins/core.cache/class.CacheStreamLayer.php @@ -20,7 +20,7 @@ */ namespace Pydio\Cache\Core; -use Pydio\Access\Core\Model\AJXP_Node; + use Pydio\Access\Core\AJXP_SchemeTranslatorWrapper; use Pydio\Core\Services\CacheService; diff --git a/core/src/plugins/core.conf/class.AJXP_Role.php b/core/src/plugins/core.conf/class.AJXP_Role.php index 258d330899..e104347574 100644 --- a/core/src/plugins/core.conf/class.AJXP_Role.php +++ b/core/src/plugins/core.conf/class.AJXP_Role.php @@ -21,7 +21,7 @@ namespace Pydio\Conf\Core; use Pydio\Access\Core\Filter\AJXP_PermissionMask; -use Pydio\Access\Core\Model\Repository; + use Pydio\Core\Model\RepositoryInterface; defined('AJXP_EXEC') or die('Access not allowed'); diff --git a/core/src/plugins/core.conf/class.AbstractConfDriver.php b/core/src/plugins/core.conf/class.AbstractConfDriver.php index d294f2c850..6fd3c2d4a2 100644 --- a/core/src/plugins/core.conf/class.AbstractConfDriver.php +++ b/core/src/plugins/core.conf/class.AbstractConfDriver.php @@ -33,7 +33,7 @@ use Pydio\Core\Http\Message\XMLMessage; use Pydio\Core\Http\Response\AsyncResponseStream; use Pydio\Core\Http\Response\SerializableResponseStream; -use Pydio\Core\Model\Context; + use Pydio\Core\Model\ContextInterface; use Pydio\Core\Model\UserInterface; use Pydio\Core\Services\AuthService; @@ -904,7 +904,6 @@ public function switchAction(ServerRequestInterface $requestInterface, ResponseI $webdavActive = false; $passSet = false; - $digestSet = false; // Detect http/https and host if (ConfService::getCoreConf("WEBDAV_BASEHOST") != "") { $baseURL = ConfService::getCoreConf("WEBDAV_BASEHOST"); @@ -1108,7 +1107,6 @@ public function switchAction(ServerRequestInterface $requestInterface, ResponseI case "user_list_authorized_users" : - $defaultFormat = "html"; if(isSet($httpVars["format"]) && $httpVars["format"] == "xml"){ header('Content-Type: text/xml; charset=UTF-8'); header('Cache-Control: no-cache'); diff --git a/core/src/plugins/core.index/class.CoreIndexer.php b/core/src/plugins/core.index/class.CoreIndexer.php index cfa88d89ce..b6b25eb314 100644 --- a/core/src/plugins/core.index/class.CoreIndexer.php +++ b/core/src/plugins/core.index/class.CoreIndexer.php @@ -19,12 +19,9 @@ * The latest code can be found at . */ use Pydio\Access\Core\Model\AJXP_Node; -use Pydio\Access\Core\Model\Repository; use Pydio\Access\Core\Model\UserSelection; use Pydio\Core\Model\ContextInterface; use Pydio\Core\Model\UserInterface; -use Pydio\Core\Services\AuthService; -use Pydio\Conf\Core\AbstractAjxpUser; use Pydio\Core\Services\ConfService; use Pydio\Core\Controller\Controller; use Pydio\Core\PluginFramework\Plugin; @@ -175,7 +172,7 @@ public function recursiveIndexation(ContextInterface $ctx, $node, $depth = 0) /** - * @param \Pydio\Access\Core\Model\Repository $repository + * @param \Pydio\Core\Model\RepositoryInterface $repository * @param UserInterface $user * @return string */ @@ -194,7 +191,7 @@ protected function buildIndexLockKey($repository, $user){ /** * @param String $status * @param String $message - * @param Repository $repository + * @param \Pydio\Core\Model\RepositoryInterface $repository * @param UserInterface $user * @param boolean $stoppable */ @@ -211,7 +208,7 @@ protected function setIndexStatus($status, $message, $repository, $user, $stoppa } /** - * @param Repository $repository + * @param \Pydio\Core\Model\RepositoryInterface $repository * @param UserInterface $user * @return array Array(STATUS, Message) */ @@ -226,7 +223,7 @@ protected function getIndexStatus($repository, $user) } /** - * @param Repository $repository + * @param \Pydio\Core\Model\RepositoryInterface $repository * @param UserInterface $user */ protected function releaseStatus($repository, $user) @@ -241,7 +238,7 @@ protected function releaseStatus($repository, $user) /** - * @param Repository $repository + * @param \Pydio\Core\Model\RepositoryInterface $repository * @param UserInterface $user */ protected function requireInterrupt($repository, $user) @@ -250,7 +247,7 @@ protected function requireInterrupt($repository, $user) } /** - * @param Repository $repository + * @param \Pydio\Core\Model\RepositoryInterface $repository * @param UserInterface $user * @return boolean */ diff --git a/core/src/plugins/core.log/class.AJXP_Logger.php b/core/src/plugins/core.log/class.AJXP_Logger.php index 8c3b2ec069..213935e31b 100644 --- a/core/src/plugins/core.log/class.AJXP_Logger.php +++ b/core/src/plugins/core.log/class.AJXP_Logger.php @@ -23,7 +23,7 @@ use Pydio\Access\Core\Model\UserSelection; use Pydio\Core\Model\Context; use Pydio\Core\Model\ContextInterface; -use Pydio\Core\Services\AuthService; + use Pydio\Core\Services\ConfService; use Pydio\Core\PluginFramework\Plugin; use Pydio\Core\PluginFramework\PluginsService; diff --git a/core/src/plugins/core.meta/class.AJXP_AbstractMetaSource.php b/core/src/plugins/core.meta/class.AJXP_AbstractMetaSource.php index 213fb8d26f..4a26cc6912 100644 --- a/core/src/plugins/core.meta/class.AJXP_AbstractMetaSource.php +++ b/core/src/plugins/core.meta/class.AJXP_AbstractMetaSource.php @@ -22,7 +22,7 @@ use Pydio\Access\Core\AbstractAccessDriver; use Pydio\Core\Model\ContextInterface; -use Pydio\Core\Services\ConfService; + use Pydio\Core\PluginFramework\Plugin; use Pydio\Core\Services\RepositoryService; diff --git a/core/src/plugins/core.metastore/interface.MetaStoreProvider.php b/core/src/plugins/core.metastore/interface.MetaStoreProvider.php index 911cdd9acc..c021546ee3 100644 --- a/core/src/plugins/core.metastore/interface.MetaStoreProvider.php +++ b/core/src/plugins/core.metastore/interface.MetaStoreProvider.php @@ -21,7 +21,7 @@ namespace Pydio\Metastore\Core; use Pydio\Access\Core\AbstractAccessDriver; -use Pydio\Access\Core\IAjxpWrapper; + use Pydio\Access\Core\IAjxpWrapperProvider; use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Core\Model\ContextInterface; diff --git a/core/src/plugins/core.notifications/class.AJXP_Notification.php b/core/src/plugins/core.notifications/class.AJXP_Notification.php index 3a6e85ae69..959cd57ad0 100755 --- a/core/src/plugins/core.notifications/class.AJXP_Notification.php +++ b/core/src/plugins/core.notifications/class.AJXP_Notification.php @@ -20,7 +20,7 @@ */ use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Core\Model\ContextProviderInterface; -use Pydio\Core\Services\AuthService; + use Pydio\Core\Services\ConfService; use Pydio\Core\Services\LocaleService; use Pydio\Core\Services\RepositoryService; diff --git a/core/src/plugins/core.notifications/interface.AJXP_FeedStore.php b/core/src/plugins/core.notifications/interface.AJXP_FeedStore.php index b4a29f9262..9e2fb899bc 100644 --- a/core/src/plugins/core.notifications/interface.AJXP_FeedStore.php +++ b/core/src/plugins/core.notifications/interface.AJXP_FeedStore.php @@ -89,7 +89,7 @@ public function dismissAlertById(ContextInterface $ctx, $alertId, $occurrences = * @return void */ public function persistMetaObject($indexPath, $data, $repositoryId, $repositoryScope, $repositoryOwner, $userId, $userGroup); - public function findMetaObjectsByIndexPath($repositoryId, $indexPath, $userId, $userGroup, $offset = 0, $limit = 20, $orderBy = "date", $orderDir = "desc"); + public function findMetaObjectsByIndexPath($repositoryId, $indexPath, $userId, $userGroup, $offset = 0, $limit = 20, $orderBy = "date", $orderDir = "desc", $recurring=true); public function updateMetaObject($repositoryId, $oldPath, $newPath = null, $copy = false); } diff --git a/core/src/plugins/core.ocs/src/Client/OCSClient.php b/core/src/plugins/core.ocs/src/Client/OCSClient.php index 8d4ee5524c..5893c4884c 100644 --- a/core/src/plugins/core.ocs/src/Client/OCSClient.php +++ b/core/src/plugins/core.ocs/src/Client/OCSClient.php @@ -209,13 +209,4 @@ private static function getClient($url) { ]); } - /** - * @param $url - * @return mixed|string - */ - private static function getPath($url) { - $path = parse_url($url, PHP_URL_PATH); - if($path == "/" || $path === $url) return ""; - return $path; - } } diff --git a/core/src/plugins/core.ocs/src/Model/RemoteShare.php b/core/src/plugins/core.ocs/src/Model/RemoteShare.php index b20c568d72..eeb63ec63e 100644 --- a/core/src/plugins/core.ocs/src/Model/RemoteShare.php +++ b/core/src/plugins/core.ocs/src/Model/RemoteShare.php @@ -21,7 +21,7 @@ namespace Pydio\OCS\Model; use Pydio\Access\Core\Filter\ContentFilter; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Services\RepositoryService; use Sabre\DAV; use Sabre\DAV\Exception; diff --git a/core/src/plugins/core.ocs/src/Server/Dav/AuthSharingBackend.php b/core/src/plugins/core.ocs/src/Server/Dav/AuthSharingBackend.php index 7298f4b52d..6b674f3b1d 100644 --- a/core/src/plugins/core.ocs/src/Server/Dav/AuthSharingBackend.php +++ b/core/src/plugins/core.ocs/src/Server/Dav/AuthSharingBackend.php @@ -24,6 +24,7 @@ use Pydio\Core\Exception\LoginException; use Pydio\Core\Http\Dav\Collection; +use Pydio\Core\Model\Context; use Pydio\Core\Services\AuthService; use Pydio\Core\Services\ConfService; use Pydio\Core\Services\RepositoryService; @@ -103,7 +104,8 @@ public function authenticate(DAV\Server $server, $realm) { // Authenticates the user $token = $userpass[0]; - $shareStore = new ShareStore(ConfService::getCoreConf("PUBLIC_DOWNLOAD_FOLDER")); + $ctx = new Context($token, null); + $shareStore = new ShareStore($ctx, ConfService::getCoreConf("PUBLIC_DOWNLOAD_FOLDER")); $shareData = $shareStore->loadShare($token); if(is_array($shareData)){ $this->shareData = $shareData; diff --git a/core/src/plugins/core.ocs/src/Server/Dav/Server.php b/core/src/plugins/core.ocs/src/Server/Dav/Server.php index 26c6a3baf2..1633ba9e66 100644 --- a/core/src/plugins/core.ocs/src/Server/Dav/Server.php +++ b/core/src/plugins/core.ocs/src/Server/Dav/Server.php @@ -26,6 +26,7 @@ use Pydio\Core\Http\Dav\BrowserPlugin; use Pydio\Core\Http\Dav\Collection; +use Pydio\Core\Model\Context; use Pydio\Core\Services\ConfService; use Pydio\Core\Services\RepositoryService; use Pydio\Log\Core\AJXP_Logger; @@ -51,7 +52,8 @@ protected function pointToBaseFile(){ $testBackend = new BasicAuthNoPass(); $userPass = $testBackend->getUserPass(); if(isSet($userPass[0])){ - $shareStore = new ShareStore(ConfService::getCoreConf("PUBLIC_DOWNLOAD_FOLDER")); + $ctx = new Context($userPass[0], null); + $shareStore = new ShareStore($ctx, ConfService::getCoreConf("PUBLIC_DOWNLOAD_FOLDER")); $shareData = $shareStore->loadShare($userPass[0]); if(isSet($shareData) && isSet($shareData["REPOSITORY"])){ $repo = RepositoryService::getRepositoryById($shareData["REPOSITORY"]); diff --git a/core/src/plugins/core.tasks/src/ITasksProvider.php b/core/src/plugins/core.tasks/src/ITasksProvider.php index 41dc7708e4..59a10193f5 100644 --- a/core/src/plugins/core.tasks/src/ITasksProvider.php +++ b/core/src/plugins/core.tasks/src/ITasksProvider.php @@ -21,8 +21,8 @@ namespace Pydio\Tasks; use Pydio\Access\Core\Model\AJXP_Node; -use Pydio\Access\Core\Model\Repository; -use Pydio\Conf\Core\AbstractAjxpUser; + + use Pydio\Core\Model\RepositoryInterface; use Pydio\Core\Model\UserInterface; diff --git a/core/src/plugins/core.tasks/src/Providers/SqlTasksProvider.php b/core/src/plugins/core.tasks/src/Providers/SqlTasksProvider.php index 6c3f31c204..882309473f 100644 --- a/core/src/plugins/core.tasks/src/Providers/SqlTasksProvider.php +++ b/core/src/plugins/core.tasks/src/Providers/SqlTasksProvider.php @@ -23,7 +23,7 @@ use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Access\Core\Model\Repository; use Pydio\Conf\Core\AbstractAjxpUser; -use Pydio\Core\Services\AuthService; + use Pydio\Tasks\ITasksProvider; use Pydio\Tasks\Schedule; use Pydio\Tasks\Task; diff --git a/core/src/plugins/core.tasks/src/TaskController.php b/core/src/plugins/core.tasks/src/TaskController.php index bcac780d7e..5104d3cc2d 100644 --- a/core/src/plugins/core.tasks/src/TaskController.php +++ b/core/src/plugins/core.tasks/src/TaskController.php @@ -24,14 +24,14 @@ use Psr\Http\Message\ServerRequestInterface; use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Core\Controller\CliRunner; -use Pydio\Core\Controller\Controller; + use Pydio\Core\Http\Message\UserMessage; use Pydio\Core\Http\SimpleRestResourceRouter; use Pydio\Core\Model\ContextInterface; use Pydio\Core\PluginFramework\Plugin; use Pydio\Core\PluginFramework\SqlTableProvider; -use Pydio\Core\Services\AuthService; -use Pydio\Core\Services\ConfService; + + use Pydio\Core\Utils\Utils; use Pydio\Tasks\Providers\SqlTasksProvider; use Zend\Diactoros\Response\JsonResponse; diff --git a/core/src/plugins/core.tasks/src/TaskService.php b/core/src/plugins/core.tasks/src/TaskService.php index 53737e23c2..e8ea462ad1 100644 --- a/core/src/plugins/core.tasks/src/TaskService.php +++ b/core/src/plugins/core.tasks/src/TaskService.php @@ -29,7 +29,7 @@ use Pydio\Core\Controller\CliRunner; use Pydio\Core\Controller\Controller; use Pydio\Core\Exception\PydioException; -use Pydio\Core\Model\Context; + use Pydio\Core\Model\ContextInterface; use Pydio\Core\Services\ConfService; use Pydio\Core\Utils\Utils; diff --git a/core/src/plugins/editor.audio/class.AudioPreviewer.php b/core/src/plugins/editor.audio/class.AudioPreviewer.php index 215be9df0d..8e0c81bb52 100644 --- a/core/src/plugins/editor.audio/class.AudioPreviewer.php +++ b/core/src/plugins/editor.audio/class.AudioPreviewer.php @@ -23,10 +23,10 @@ use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Access\Core\Model\UserSelection; use Pydio\Core\Services\AuthService; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Controller\Controller; use Pydio\Core\Utils\Utils; -use Pydio\Core\Controller\XMLWriter; + use Pydio\Core\PluginFramework\Plugin; defined('AJXP_EXEC') or die( 'Access not allowed'); diff --git a/core/src/plugins/editor.browser/class.FileMimeSender.php b/core/src/plugins/editor.browser/class.FileMimeSender.php index 21e1126ee4..be9dfc995c 100755 --- a/core/src/plugins/editor.browser/class.FileMimeSender.php +++ b/core/src/plugins/editor.browser/class.FileMimeSender.php @@ -21,7 +21,7 @@ use Pydio\Access\Core\AJXP_MetaStreamWrapper; use Pydio\Access\Core\Model\UserSelection; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Controller\Controller; use Pydio\Core\Controller\HTMLWriter; use Pydio\Core\PluginFramework\Plugin; diff --git a/core/src/plugins/editor.diaporama/PThumb.lib.php b/core/src/plugins/editor.diaporama/PThumb.lib.php index ff28e24f72..fb2b3faef1 100644 --- a/core/src/plugins/editor.diaporama/PThumb.lib.php +++ b/core/src/plugins/editor.diaporama/PThumb.lib.php @@ -372,12 +372,6 @@ function print_thumbnail($image,$width,$height,$return_img = false, $display_inl print(implode("",file($cache_file))); die(); - //Prepare redirectional URL - $redir_url = $_SERVER["HTTP_HOST"].dirname($_SERVER["PHP_SELF"])."/".$cache_file; - //Remove instances of double slashes "//" - $redir_url = str_replace("//","/",$redir_url); - header("Location: http://$redir_url"); - die(); } else{ return implode("",file($cache_file)); diff --git a/core/src/plugins/editor.diaporama/class.ImagePreviewer.php b/core/src/plugins/editor.diaporama/class.ImagePreviewer.php index 2cfa464363..9ca900c6cb 100644 --- a/core/src/plugins/editor.diaporama/class.ImagePreviewer.php +++ b/core/src/plugins/editor.diaporama/class.ImagePreviewer.php @@ -22,7 +22,7 @@ use Pydio\Access\Core\AJXP_MetaStreamWrapper; use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Access\Core\Model\UserSelection; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Services\LocalCache; use Pydio\Core\Controller\Controller; use Pydio\Core\Utils\Utils; @@ -120,6 +120,12 @@ public function removeThumbnail($oldFile, $newFile = null, $copy = false) } } + /** + * @param \Pydio\Core\Model\ContextInterface $ctx + * @param $masterFile + * @param $targetFile + * @return bool + */ public function generateThumbnail(\Pydio\Core\Model\ContextInterface $ctx, $masterFile, $targetFile) { $size = $this->currentDimension; @@ -143,6 +149,7 @@ public function generateThumbnail(\Pydio\Core\Model\ContextInterface $ctx, $mast $this->logError("ImagePreviewer", $pThumb->error_array); return false; } + return true; } //public function extractImageMetadata($currentNode, &$metadata, $wrapperClassName, &$realFile){ diff --git a/core/src/plugins/editor.eml/class.EmlParser.php b/core/src/plugins/editor.eml/class.EmlParser.php index 5c3d1aa5a9..f1379ad2bd 100644 --- a/core/src/plugins/editor.eml/class.EmlParser.php +++ b/core/src/plugins/editor.eml/class.EmlParser.php @@ -23,11 +23,11 @@ use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Access\Core\Model\UserSelection; use Pydio\Core\Model\ContextInterface; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Services\LocalCache; use Pydio\Core\Controller\Controller; use Pydio\Core\Services\LocaleService; -use Pydio\Core\Services\RepositoryService; + use Pydio\Core\Services\UsersService; use Pydio\Core\Utils\Utils; use Pydio\Core\PluginFramework\Plugin; @@ -275,7 +275,6 @@ public function mimeExtractorCallback($masterFile, $targetFile) 'decode_bodies' => false, 'decode_headers' => 'UTF-8' ); - $mess = LocaleService::getMessages(); $content = file_get_contents($masterFile); $decoder = new Mail_mimeDecode($content); $structure = $decoder->decode($params); diff --git a/core/src/plugins/editor.etherpad/class.EtherpadClient.php b/core/src/plugins/editor.etherpad/class.EtherpadClient.php index 148843e562..d7f7c44a74 100644 --- a/core/src/plugins/editor.etherpad/class.EtherpadClient.php +++ b/core/src/plugins/editor.etherpad/class.EtherpadClient.php @@ -22,9 +22,9 @@ use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Access\Core\Model\UserSelection; use Pydio\Core\Model\ContextInterface; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Controller\Controller; -use Pydio\Core\Services\LocaleService; + use Pydio\Core\Utils\Utils; use Pydio\Core\Controller\HTMLWriter; use Pydio\Core\PluginFramework\Plugin; diff --git a/core/src/plugins/editor.imagick/class.IMagickPreviewer.php b/core/src/plugins/editor.imagick/class.IMagickPreviewer.php index 52871258b5..afcc68e06a 100644 --- a/core/src/plugins/editor.imagick/class.IMagickPreviewer.php +++ b/core/src/plugins/editor.imagick/class.IMagickPreviewer.php @@ -22,7 +22,7 @@ use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Access\Core\Model\UserSelection; use Pydio\Core\Model\ContextInterface; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Services\LocalCache; use Pydio\Core\Controller\Controller; use Pydio\Core\Exception\PydioException; @@ -60,7 +60,7 @@ public function switchAction($action, $httpVars, $filesVars, \Pydio\Core\Model\C { $convert = $this->getContextualOption($contextInterface, "IMAGE_MAGICK_CONVERT"); if (empty($convert)) { - return false; + return ; } $flyThreshold = 1024*1024*intval($this->getContextualOption($contextInterface, "ONTHEFLY_THRESHOLD")); $selection = UserSelection::fromContext($contextInterface, $httpVars); @@ -78,7 +78,7 @@ public function switchAction($action, $httpVars, $filesVars, \Pydio\Core\Model\C } if (($size = filesize($file)) === false) { - return false; + return ; } else { if($size > $flyThreshold) $this->useOnTheFly = true; else $this->useOnTheFly = false; @@ -100,14 +100,14 @@ public function switchAction($action, $httpVars, $filesVars, \Pydio\Core\Model\C $files = $this->listExtractedJpg($file, $prefix); header("Content-Type: application/json"); print(json_encode($files)); - return false; + return ; } else if ($this->extractAll) { // on the fly extract mode $ext = pathinfo($file, PATHINFO_EXTENSION); $prefix = str_replace(".$ext", "", $cache->getId()); $files = $this->listPreviewFiles($contextInterface, $file, $prefix); header("Content-Type: application/json"); print(json_encode($files)); - return false; + return ; } else { header("Content-Type: image/jpeg; name=\"".basename($file)."\""); header("Content-Length: ".strlen($cacheData)); @@ -116,7 +116,7 @@ public function switchAction($action, $httpVars, $filesVars, \Pydio\Core\Model\C header("Last-Modified: " . gmdate("D, d M Y H:i:s", time()-10000) . " GMT"); header("Expires: " . gmdate("D, d M Y H:i:s", time()+5*24*3600) . " GMT"); print($cacheData); - return false; + return ; } } else if ($action == "get_extracted_page" && isSet($httpVars["file"])) { @@ -136,7 +136,7 @@ public function switchAction($action, $httpVars, $filesVars, \Pydio\Core\Model\C $this->generateJpegsCallback($contextInterface, $destStreamURL.$srcfile, $file); } - if(!is_file($file)) return false; + if(!is_file($file)) return ; header("Content-Type: image/jpeg; name=\"".basename($file)."\""); header("Content-Length: ".filesize($file)); header('Cache-Control: public'); @@ -151,6 +151,7 @@ public function switchAction($action, $httpVars, $filesVars, \Pydio\Core\Model\C } */ } + } /** diff --git a/core/src/plugins/editor.pixlr/class.PixlrEditor.php b/core/src/plugins/editor.pixlr/class.PixlrEditor.php index fe6e4fc210..4b61258cd4 100644 --- a/core/src/plugins/editor.pixlr/class.PixlrEditor.php +++ b/core/src/plugins/editor.pixlr/class.PixlrEditor.php @@ -25,7 +25,7 @@ use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Access\Core\Model\UserSelection; use Pydio\Core\Model\ContextInterface; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Controller\Controller; use Pydio\Core\Exception\PydioException; use Pydio\Core\Services\LocaleService; @@ -75,7 +75,7 @@ public function switchAction(ServerRequestInterface &$request, ResponseInterface if ($action == "post_to_server") { if(!is_writeable($selectedNodeUrl)){ header("Location:".Utils::detectServerURL(true)."/plugins/editor.pixlr/fake_error_pixlr.php"); - return false; + return; } // Backward compat @@ -131,7 +131,7 @@ public function switchAction(ServerRequestInterface &$request, ResponseInterface if(!is_writeable($selectedNode->getUrl())){ $this->logError("Pixlr Editor", "Trying to edit an unauthorized file ".$selectedNode->getUrl()); - return false; + return; } $this->logInfo('Edit', 'Retrieving content of '.$file.' from Pixlr server.', array("files" => $file)); diff --git a/core/src/plugins/editor.video/class.VideoReader.php b/core/src/plugins/editor.video/class.VideoReader.php index 5bd4ea8367..9e581bfda2 100755 --- a/core/src/plugins/editor.video/class.VideoReader.php +++ b/core/src/plugins/editor.video/class.VideoReader.php @@ -22,7 +22,7 @@ use Pydio\Access\Core\AJXP_MetaStreamWrapper; use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Access\Core\Model\UserSelection; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Controller\Controller; use Pydio\Core\Utils\Utils; use Pydio\Core\Controller\HTMLWriter; diff --git a/core/src/plugins/editor.zoho/class.ZohoEditor.php b/core/src/plugins/editor.zoho/class.ZohoEditor.php index 9039ce51b9..41f5eeb095 100644 --- a/core/src/plugins/editor.zoho/class.ZohoEditor.php +++ b/core/src/plugins/editor.zoho/class.ZohoEditor.php @@ -124,7 +124,6 @@ public function switchAction(ServerRequestInterface &$request, ResponseInterface $action = $request->getAttribute("action"); $httpVars = $request->getParsedBody(); - $repository = $ctx->getRepository(); $loggedUser = $ctx->getUser(); if($loggedUser != null){ @@ -238,7 +237,7 @@ public function switchAction(ServerRequestInterface &$request, ResponseInterface $this->logError("Zoho Editor", "Trying to edit an unauthorized file ".$node->getUrl()); $stream->write("NOT_ALLOWED"); - return false; + return ; } Controller::applyHook("node.before_change", array(&$node)); diff --git a/core/src/plugins/feed.sql/class.AJXP_SqlFeedStore.php b/core/src/plugins/feed.sql/class.AJXP_SqlFeedStore.php index 481ed0d40e..d74f1c2e91 100755 --- a/core/src/plugins/feed.sql/class.AJXP_SqlFeedStore.php +++ b/core/src/plugins/feed.sql/class.AJXP_SqlFeedStore.php @@ -22,7 +22,7 @@ use Pydio\Access\Core\Filter\AJXP_Permission; use Pydio\Core\Model\Context; use Pydio\Core\Model\ContextInterface; -use Pydio\Core\Services\AuthService; + use Pydio\Core\Controller\Controller; use Pydio\Core\Utils\Utils; use Pydio\Core\PluginFramework\Plugin; @@ -365,7 +365,7 @@ public function findMetaObjectsByIndexPath($repositoryId, $indexPath, $userId, $ public function updateMetaObject($repositoryId, $oldPath, $newPath = null, $copy = false) { - if($this->sqlDriver["password"] == "XXXX") return array(); + if($this->sqlDriver["password"] == "XXXX") return; if(!dibi::isConnected()) { dibi::connect($this->sqlDriver); } diff --git a/core/src/plugins/index.lucene/class.AjxpLuceneIndexer.php b/core/src/plugins/index.lucene/class.AjxpLuceneIndexer.php index e1f06aa75b..9e3c99954f 100644 --- a/core/src/plugins/index.lucene/class.AjxpLuceneIndexer.php +++ b/core/src/plugins/index.lucene/class.AjxpLuceneIndexer.php @@ -602,47 +602,47 @@ public function createIndexedDocument($ajxpNode, &$index) } if($doc == null) throw new Exception("Could not load document"); - $doc->addField(Zend_Search_Lucene_Field::Keyword("node_url", $ajxpNode->getUrl()), TextEncoder::getEncoding()); - $doc->addField(Zend_Search_Lucene_Field::Keyword("node_path", str_replace("/", "AJXPFAKESEP", $ajxpNode->getPath())), TextEncoder::getEncoding()); - $doc->addField(Zend_Search_Lucene_Field::Text("basename", basename($ajxpNode->getPath())), TextEncoder::getEncoding()); - $doc->addField(Zend_Search_Lucene_Field::Keyword("ajxp_node", "yes"), TextEncoder::getEncoding()); - $doc->addField(Zend_Search_Lucene_Field::Keyword("ajxp_scope", "shared")); - $doc->addField(Zend_Search_Lucene_Field::Keyword("ajxp_modiftime", date("Ymd", $ajxpNode->ajxp_modiftime))); - $doc->addField(Zend_Search_Lucene_Field::Keyword("ajxp_bytesize", $ajxpNode->bytesize)); + $doc->addField(Zend_Search_Lucene_Field::keyword("node_url", $ajxpNode->getUrl()), TextEncoder::getEncoding()); + $doc->addField(Zend_Search_Lucene_Field::keyword("node_path", str_replace("/", "AJXPFAKESEP", $ajxpNode->getPath())), TextEncoder::getEncoding()); + $doc->addField(Zend_Search_Lucene_Field::text("basename", basename($ajxpNode->getPath())), TextEncoder::getEncoding()); + $doc->addField(Zend_Search_Lucene_Field::keyword("ajxp_node", "yes"), TextEncoder::getEncoding()); + $doc->addField(Zend_Search_Lucene_Field::keyword("ajxp_scope", "shared")); + $doc->addField(Zend_Search_Lucene_Field::keyword("ajxp_modiftime", date("Ymd", $ajxpNode->ajxp_modiftime))); + $doc->addField(Zend_Search_Lucene_Field::keyword("ajxp_bytesize", $ajxpNode->bytesize)); $ajxpMime = $ajxpNode->ajxp_mime; if (empty($ajxpMime)) { - $doc->addField(Zend_Search_Lucene_Field::Keyword("ajxp_mime", pathinfo($ajxpNode->getLabel(), PATHINFO_EXTENSION))); + $doc->addField(Zend_Search_Lucene_Field::keyword("ajxp_mime", pathinfo($ajxpNode->getLabel(), PATHINFO_EXTENSION))); } else { - $doc->addField(Zend_Search_Lucene_Field::Keyword("ajxp_mime", $ajxpNode->ajxp_mime)); + $doc->addField(Zend_Search_Lucene_Field::keyword("ajxp_mime", $ajxpNode->ajxp_mime)); } // Store a cached copy of the metadata $serializedMeta = base64_encode(serialize($ajxpNode->metadata)); - $doc->addField(Zend_Search_Lucene_Field::Binary("serialized_metadata", $serializedMeta)); + $doc->addField(Zend_Search_Lucene_Field::binary("serialized_metadata", $serializedMeta)); if (isSet($ajxpNode->indexableMetaKeys["shared"])) { foreach ($ajxpNode->indexableMetaKeys["shared"] as $sharedField) { - if($ajxpNode->$sharedField) $doc->addField(Zend_search_Lucene_Field::keyword($sharedField, $ajxpNode->$sharedField)); + if($ajxpNode->$sharedField) $doc->addField(Zend_Search_Lucene_Field::keyword($sharedField, $ajxpNode->$sharedField)); } } foreach ($this->metaFields as $field) { if ($ajxpNode->$field != null) { - $doc->addField(Zend_Search_Lucene_Field::Text("ajxp_meta_$field", $ajxpNode->$field), TextEncoder::getEncoding()); + $doc->addField(Zend_Search_Lucene_Field::text("ajxp_meta_$field", $ajxpNode->$field), TextEncoder::getEncoding()); } } if (isSet($ajxpNode->indexableMetaKeys["user"]) && count($ajxpNode->indexableMetaKeys["user"]) && UsersService::usersEnabled() && $ajxpNode->getContext()->hasUser() ) { $privateDoc = new Zend_Search_Lucene_Document(); - $privateDoc->addField(Zend_Search_Lucene_Field::Keyword("node_url", $ajxpNode->getUrl(), TextEncoder::getEncoding())); - $privateDoc->addField(Zend_Search_Lucene_Field::Keyword("node_path", str_replace("/", "AJXPFAKESEP", $ajxpNode->getPath()), TextEncoder::getEncoding())); + $privateDoc->addField(Zend_Search_Lucene_Field::keyword("node_url", $ajxpNode->getUrl(), TextEncoder::getEncoding())); + $privateDoc->addField(Zend_Search_Lucene_Field::keyword("node_path", str_replace("/", "AJXPFAKESEP", $ajxpNode->getPath()), TextEncoder::getEncoding())); - $privateDoc->addField(Zend_Search_Lucene_Field::Keyword("ajxp_scope", "user")); - $privateDoc->addField(Zend_Search_Lucene_Field::Keyword("ajxp_user", $ajxpNode->getContext()->getUser()->getId())); + $privateDoc->addField(Zend_Search_Lucene_Field::keyword("ajxp_scope", "user")); + $privateDoc->addField(Zend_Search_Lucene_Field::keyword("ajxp_user", $ajxpNode->getContext()->getUser()->getId())); foreach ($ajxpNode->indexableMetaKeys["user"] as $userField) { if ($ajxpNode->$userField) { - $privateDoc->addField(Zend_search_Lucene_Field::keyword($userField, $ajxpNode->$userField)); + $privateDoc->addField(Zend_Search_Lucene_Field::keyword($userField, $ajxpNode->$userField)); } } - $privateDoc->addField(Zend_Search_Lucene_Field::Binary("serialized_metadata", $serializedMeta)); + $privateDoc->addField(Zend_Search_Lucene_Field::binary("serialized_metadata", $serializedMeta)); $index->addDocument($privateDoc); } diff --git a/core/src/plugins/log.sql/class.sqlLogDriver.php b/core/src/plugins/log.sql/class.sqlLogDriver.php index 768575cbcd..871380a904 100644 --- a/core/src/plugins/log.sql/class.sqlLogDriver.php +++ b/core/src/plugins/log.sql/class.sqlLogDriver.php @@ -403,9 +403,13 @@ public function write2($level, $ip, $user, $repositoryId, $source, $prefix, $mes /** * List available log files in XML * - * @param String [optional] $nodeName - * @param String [optional] $year - * @param String [optional] $month + * @param string $nodeName + * @param null $year + * @param null $month + * @param string $rootPath + * @param bool $print + * @return array|String[] + * @throws \Pydio\Core\Exception\PydioException */ public function xmlListLogFiles($nodeName="file", $year=null, $month=null, $rootPath = "/logs", $print = true) { @@ -430,8 +434,7 @@ public function xmlListLogFiles($nodeName="file", $year=null, $month=null, $root $dFunc = "DATE([logdate])"; break; default: - echo "ERROR!, DB driver "+ $this->sqlDriver["driver"] +" not supported yet in __FUNCTION__"; - exit(1); + throw new \Pydio\Core\Exception\PydioException("ERROR!, DB driver " . $this->sqlDriver["driver"] . " not supported yet in __FUNCTION__"); } try { diff --git a/core/src/plugins/log.syslog/class.sysLogDriver.php b/core/src/plugins/log.syslog/class.sysLogDriver.php index 53568a4047..35f443fd12 100644 --- a/core/src/plugins/log.syslog/class.sysLogDriver.php +++ b/core/src/plugins/log.syslog/class.sysLogDriver.php @@ -53,6 +53,7 @@ public function __destruct() if ($this->fileHandle !== false) { $this->close(); } + parent::__destruct(); } /** @@ -61,6 +62,7 @@ public function __destruct() public function __clone() { $this->close(); $this->open(); + parent::__clone(); } /** diff --git a/core/src/plugins/meta.exif/class.ExifMetaManager.php b/core/src/plugins/meta.exif/class.ExifMetaManager.php index 235d1e3a68..2ee78ac8a6 100644 --- a/core/src/plugins/meta.exif/class.ExifMetaManager.php +++ b/core/src/plugins/meta.exif/class.ExifMetaManager.php @@ -21,12 +21,12 @@ use Pydio\Access\Core\AbstractAccessDriver; use Pydio\Access\Core\AJXP_MetaStreamWrapper; -use Pydio\Access\Core\Model\AJXP_Node; + use Pydio\Access\Core\Model\UserSelection; use Pydio\Core\Model\ContextInterface; use Pydio\Core\Utils\Utils; -use Pydio\Core\Controller\XMLWriter; -use Pydio\Core\Controller\HTMLWriter; + + use Pydio\Core\Utils\TextEncoder; use Pydio\Meta\Core\AJXP_AbstractMetaSource; @@ -137,10 +137,7 @@ public function extractExif(\Psr\Http\Message\ServerRequestInterface $requestInt $exifData["IPTC"] = $iptc; } $excludeTags = array();// array("componentsconfiguration", "filesource", "scenetype", "makernote", "datadump"); - $format = "xml"; - if(isSet($httpVars["format"]) && $httpVars["format"] == "json"){ - $format = "json"; - } + $filteredData = array(); foreach ($exifData as $section => $data) { $filteredData[$section] = array(); diff --git a/core/src/plugins/meta.exif/class.GeoConversion.php b/core/src/plugins/meta.exif/class.GeoConversion.php index c1196739c0..39f053291a 100644 --- a/core/src/plugins/meta.exif/class.GeoConversion.php +++ b/core/src/plugins/meta.exif/class.GeoConversion.php @@ -1,13 +1,13 @@ DMS2Dd('45º22\'38"') -> 45.3772 // +// eg: $GeoConversao->DMS2Dd('45�22\'38"') -> 45.3772 // // // // // // // @@ -23,22 +23,22 @@ // DMS (DMS) = Degrees, Minutes, Seconds (eg. 45o22'38") // //***********************************************************************// -//**************************Descrição em Português*********************// -// Classe para conversão de coordenadas de Latitude e Longitude // -// Desenvolvida por: Diêgo Garrido de Almeida // -// Localização: Conselheiro Lafaiete - Minas Gerais / Brasil // -// Licença: Nenhuma, podendo ser alterada, sem necessidade de créditos // -// Utilização Recomendada: Conversão das Coordenadas do Google Earth // -// para a API do Google Maps para WEB, através // -// do Método GeoConversao::DMS2Dd // -// ex: $GeoConversao->DMS2Dd('45º22\'38"') -> 45.3772 // +//**************************Descrio em Portugus*********************// +// Classe para converso de coordenadas de Latitude e Longitude // +// Desenvolvida por: Diego Garrido de Almeida // +// Localizado: Conselheiro Lafaiete - Minas Gerais / Brasil // +// Licenca: Nenhuma, podendo ser alterada, sem necessidade de creditos // +// Utilizatio Recomendada: Conversco das Coordenadas do Google Earth // +// para a API do Google Maps para WEB, atraves // +// do Metodo GeoConversao::DMS2Dd // +// ex: $GeoConversao->DMS2Dd('45a22\'38"') -> 45.3772 // // // -// Considerações: // +// Considerades: // // D = Degrees (Degrais) // // M = Minutes (Minutos) // // S = Seconds (Segundos) // -// .m = Decimal Minutes (Décimos de Minuto) // -// .s = Decimal Seconds (Décimos de Segundo) // +// .m = Decimal Minutes (Decimos de Minuto) // +// .s = Decimal Seconds (Decimos de Segundo) // // // // DM.m (DMm) = Degrees, Minutes, Decimal Minutes (ex. 45o22.6333) // // D.d (Dd) = Degrees, Decimal Degrees (ex. 45.3772o) // @@ -106,7 +106,7 @@ public function DMS2DMm($DMS) $array_DMm['M'] = $array_DMS['M']; $array_DMm['D'] = $array_DMS['D']; - return $this->negative_path.$array_DMm['D'].'º'.($array_DMm['M'] + $array_DMm['m']); + return $this->negative_path.$array_DMm['D'].'�'.($array_DMm['M'] + $array_DMm['m']); } public function DMm2Dd($DMm) @@ -143,7 +143,7 @@ public function DMm2DMS($DMm) $array_DMS['M'] = $array_DMm['M']; $array_DMS['D'] = $array_DMm['D']; - return $array_DMS['D'].'°'.$array_DMS['M'].'\''.$array_DMS['S'].'"'; + return $array_DMS['D'].'�'.$array_DMS['M'].'\''.$array_DMS['S'].'"'; } public function Dd2DMm($Dd) @@ -161,7 +161,7 @@ public function Dd2DMm($Dd) $array_DMm['M'] = $dados_Mm[0]; $array_DMm['D'] = $array_Dd['D']; - return $this->negative_path.$array_DMm['D']."º ".$array_DMm['M'].".".$array_DMm['m']; + return $this->negative_path.$array_DMm['D']."� ".$array_DMm['M'].".".$array_DMm['m']; } public function Dd2DMS($Dd) diff --git a/core/src/plugins/meta.git/class.GitManager.php b/core/src/plugins/meta.git/class.GitManager.php index 18b68f0729..21512bcb3f 100644 --- a/core/src/plugins/meta.git/class.GitManager.php +++ b/core/src/plugins/meta.git/class.GitManager.php @@ -113,7 +113,7 @@ public function applyActions(\Psr\Http\Message\ServerRequestInterface $requestIn $command = $git->getCommand("cat-file"); $command->setOption("s", true); $command->addArgument($commitId.":".$file); - $size = $command->execute(); + $command->execute(); $command = $git->getCommand("show"); $command->addArgument($commitId.":".$file); diff --git a/core/src/plugins/meta.monitor_fs/class.FSMonitoringManager.php b/core/src/plugins/meta.monitor_fs/class.FSMonitoringManager.php index 0f97a8556c..d9cee339a8 100644 --- a/core/src/plugins/meta.monitor_fs/class.FSMonitoringManager.php +++ b/core/src/plugins/meta.monitor_fs/class.FSMonitoringManager.php @@ -22,7 +22,7 @@ use Pydio\Access\Core\AbstractAccessDriver; use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Core\Controller\CliRunner; -use Pydio\Core\Controller\Controller; + use Pydio\Core\Model\ContextInterface; use Pydio\Meta\Core\AJXP_AbstractMetaSource; diff --git a/core/src/plugins/meta.svn/class.SvnManager.php b/core/src/plugins/meta.svn/class.SvnManager.php index 4a0c64f985..e1b3e42ed7 100644 --- a/core/src/plugins/meta.svn/class.SvnManager.php +++ b/core/src/plugins/meta.svn/class.SvnManager.php @@ -26,7 +26,7 @@ use Pydio\Access\Core\Model\UserSelection; use Pydio\Core\Model\ContextInterface; use Pydio\Core\Services\AuthService; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Services\LocaleService; use Pydio\Core\Utils\Utils; use Pydio\Core\Controller\XMLWriter; diff --git a/core/src/plugins/meta.user/class.UserMetaManager.php b/core/src/plugins/meta.user/class.UserMetaManager.php index 90a437d571..751c849fba 100644 --- a/core/src/plugins/meta.user/class.UserMetaManager.php +++ b/core/src/plugins/meta.user/class.UserMetaManager.php @@ -99,7 +99,7 @@ public function initMeta(ContextInterface $ctx, AbstractAccessDriver $accessDriv $searchables = array(); $searchablesRenderers = array(); $index = 0; - $fieldType = "text"; + foreach ($def as $key=> $data) { $label = $data["label"]; $fieldType = $data["type"]; diff --git a/core/src/plugins/metastore.s3/class.s3MetaStore.php b/core/src/plugins/metastore.s3/class.s3MetaStore.php index d264459378..ac23d334eb 100755 --- a/core/src/plugins/metastore.s3/class.s3MetaStore.php +++ b/core/src/plugins/metastore.s3/class.s3MetaStore.php @@ -21,7 +21,7 @@ use Pydio\Access\Core\AbstractAccessDriver; use Pydio\Core\Model\ContextInterface; -use Pydio\Core\Services\AuthService; + use Pydio\Meta\Core\AJXP_AbstractMetaSource; use Pydio\Metastore\Core\MetaStoreProvider; @@ -144,7 +144,7 @@ public function retrieveMetadata($ajxpNode, $nameSpace, $private = false, $scope $data = self::$metaCache[$ajxpNode->getPath()]; } else { $pathName = $this->updateNodeMetaPath($ajxpNode, false); - if($pathName == null) return; + if($pathName == null) return []; try{ $response = $aws->headObject(array("Bucket" => $this->bucketName, "Key" => $pathName)); $metadata = $response["Metadata"]; diff --git a/core/src/plugins/metastore.xattr/class.xAttrMetaStore.php b/core/src/plugins/metastore.xattr/class.xAttrMetaStore.php index 3f14638856..72adeb9629 100755 --- a/core/src/plugins/metastore.xattr/class.xAttrMetaStore.php +++ b/core/src/plugins/metastore.xattr/class.xAttrMetaStore.php @@ -19,7 +19,7 @@ * The latest code can be found at . */ use Pydio\Access\Core\Model\AJXP_Node; -use Pydio\Core\Services\AuthService; + use Pydio\Meta\Core\AJXP_AbstractMetaSource; use Pydio\Metastore\Core\MetaStoreProvider; @@ -95,6 +95,8 @@ public function setMetadata($ajxpNode, $nameSpace, $metaData, $private = false, * @param String $nameSpace * @param bool $private * @param int $scope + * @return array|void + * @throws Exception */ public function removeMetadata($ajxpNode, $nameSpace, $private = false, $scope=AJXP_METADATA_SCOPE_REPOSITORY) { diff --git a/core/src/plugins/mq.sql/class.AJXP_SqlMessageExchanger.php b/core/src/plugins/mq.sql/class.AJXP_SqlMessageExchanger.php index 42a04121d1..2853187407 100644 --- a/core/src/plugins/mq.sql/class.AJXP_SqlMessageExchanger.php +++ b/core/src/plugins/mq.sql/class.AJXP_SqlMessageExchanger.php @@ -20,7 +20,7 @@ */ use Pydio\Core\Model\ContextInterface; -use Pydio\Core\Services\AuthService; + use Pydio\Core\Utils\Utils; use Pydio\Core\PluginFramework\Plugin; diff --git a/core/src/plugins/uploader.plupload/class.PluploadProcessor.php b/core/src/plugins/uploader.plupload/class.PluploadProcessor.php index c81191b5db..607436752e 100644 --- a/core/src/plugins/uploader.plupload/class.PluploadProcessor.php +++ b/core/src/plugins/uploader.plupload/class.PluploadProcessor.php @@ -36,7 +36,7 @@ use Pydio\Access\Core\AJXP_MetaStreamWrapper; use Pydio\Access\Core\Model\AJXP_Node; use Pydio\Access\Core\Model\UserSelection; -use Pydio\Core\Services\ConfService; + use Pydio\Core\Controller\Controller; use Pydio\Core\Utils\Utils; use Pydio\Core\Controller\XMLWriter; diff --git a/core/src/worker.php b/core/src/worker.php index 0bb7a0bdc7..fbc7ebb5e0 100644 --- a/core/src/worker.php +++ b/core/src/worker.php @@ -25,7 +25,7 @@ use Pydio\Core\Controller\ShutdownScheduler; use Pydio\Core\PluginFramework\PluginsService; use Pydio\Core\Services\RepositoryService; -use Pydio\Tasks\Schedule; + use Pydio\Tasks\Task; include_once("base.conf.php");