[TASK] CGL of FAL
authorGeorg Ringer <mail@ringerge.org>
Sat, 3 Mar 2012 11:27:21 +0000 (12:27 +0100)
committerSteffen Ritter <info@rs-websystems.de>
Mon, 5 Mar 2012 10:38:05 +0000 (11:38 +0100)
There is quite a bit what can be improved regarding CGL.

Change-Id: I074c2083604ccf3037e1b7e6441460d81028e71a
Resolves: #34480
Releases: 4.8
Reviewed-on: http://review.typo3.org/9329
Reviewed-by: Philipp Gampe
Tested-by: Philipp Gampe
Reviewed-by: Georg Ringer
Tested-by: Georg Ringer
Reviewed-by: Steffen Ritter
Tested-by: Steffen Ritter
23 files changed:
t3lib/file/AbstractFile.php
t3lib/file/Collection/FolderBasedFileCollection.php
t3lib/file/Collection/StaticFileCollection.php
t3lib/file/Driver/AbstractDriver.php
t3lib/file/Driver/DriverRegistry.php
t3lib/file/Driver/LocalDriver.php
t3lib/file/Factory.php
t3lib/file/File.php
t3lib/file/FileInterface.php
t3lib/file/FileReference.php
t3lib/file/Folder.php
t3lib/file/ProcessedFile.php
t3lib/file/Repository/AbstractRepository.php
t3lib/file/Repository/FileCollectionRepository.php
t3lib/file/Repository/FileRepository.php
t3lib/file/Repository/ProcessedFileRepository.php
t3lib/file/Repository/StorageRepository.php
t3lib/file/Service/BackwardsCompatibility/TslibContentAdapterService.php
t3lib/file/Service/FileProcessingService.php
t3lib/file/Service/ImageProcessingService.php
t3lib/file/Service/IndexerService.php
t3lib/file/Service/UserfilemountService.php
t3lib/file/Storage.php

index f3a439d..5942393 100644 (file)
@@ -156,7 +156,8 @@ abstract class t3lib_file_AbstractFile implements t3lib_file_FileInterface {
         * @return string
         */
        public function getName() {
-                       // Do not check if file has been deleted because we might need the name for undeleting it.
+                       // Do not check if file has been deleted because we might need the
+                       // name for undeleting it.
                return $this->name;
        }
 
@@ -237,7 +238,7 @@ abstract class t3lib_file_AbstractFile implements t3lib_file_FileInterface {
         * @return array file information
         */
        public function getMimeType() {
-               // TODO this will be slow - use the cached version if possible
+                       // TODO this will be slow - use the cached version if possible
                $stat = $this->getStorage()->getFileInfo($this);
                return $stat['mimetype'];
        }
@@ -256,8 +257,9 @@ abstract class t3lib_file_AbstractFile implements t3lib_file_FileInterface {
         * @return integer $fileType
         */
        public function getType() {
-                       // this basically extracts the mimetype and guess the filetype based on the first part of the mimetype
-                       // works for 99% of all cases, and we don't need to make an SQL statement like EXT:media does currently
+                       // this basically extracts the mimetype and guess the filetype based
+                       // on the first part of the mimetype works for 99% of all cases, and
+                       // we don't need to make an SQL statement like EXT:media does currently
                if (!$this->properties['type']) {
                        $mimeType = $this->getMimeType();
                        list($fileType) = explode('/', $mimeType);
@@ -265,23 +267,22 @@ abstract class t3lib_file_AbstractFile implements t3lib_file_FileInterface {
                        switch (strtolower($fileType)) {
                                case 'text':
                                        $this->properties['type'] = self::FILETYPE_TEXT;
-                               break;
+                                       break;
                                case 'image':
                                        $this->properties['type'] = self::FILETYPE_IMAGE;
-                               break;
+                                       break;
                                case 'audio':
                                        $this->properties['type'] = self::FILETYPE_AUDIO;
-                               break;
+                                       break;
                                case 'video':
                                        $this->properties['type'] = self::FILETYPE_VIDEO;
-                               break;
+                                       break;
                                case 'application':
                                case 'software':
                                        $this->properties['type'] = self::FILETYPE_SOFTWARE;
-                               break;
+                                       break;
                                default:
                                        $this->properties['type'] = self::FILETYPE_UNKNOWN;
-                               break;
                        }
                }
 
@@ -321,15 +322,10 @@ abstract class t3lib_file_AbstractFile implements t3lib_file_FileInterface {
                return $this;
        }
 
-
-
-
-
        /****************************************
         * STORAGE AND MANAGEMENT RELATED METHDOS
         ****************************************/
 
-
        /**
         * Get the storage this file is located in
         *
@@ -343,7 +339,6 @@ abstract class t3lib_file_AbstractFile implements t3lib_file_FileInterface {
                return $this->storage;
        }
 
-
        protected function loadStorage() {
                $storageUid = $this->getProperty('storage');
                if (t3lib_utility_Math::canBeInterpretedAsInteger($storageUid)) {
@@ -355,8 +350,9 @@ abstract class t3lib_file_AbstractFile implements t3lib_file_FileInterface {
        }
 
        /**
-        * Checks if this file exists. This should normally always return TRUE; it might only return FALSE when
-        * this object has been created from an index record without checking for.
+        * Checks if this file exists. This should normally always return TRUE;
+        * it might only return FALSE when this object has been created from an
+        * index record without checking for.
         *
         * @return boolean TRUE if this file physically exists
         */
@@ -370,7 +366,8 @@ abstract class t3lib_file_AbstractFile implements t3lib_file_FileInterface {
 
 
        /**
-        * Sets the storage this file is located in. This is only meant for t3lib/file/-internal usage; don't use it to move files.
+        * Sets the storage this file is located in. This is only meant for
+        * t3lib/file/-internal usage; don't use it to move files.
         *
         * @internal Should only be used by other parts of the File API (e.g. drivers after moving a file)
         * @param integer|t3lib_file_Storage $storage
@@ -400,8 +397,8 @@ abstract class t3lib_file_AbstractFile implements t3lib_file_FileInterface {
        }
 
        /**
-        * Returns a combined identifier of this file, i.e. the storage UID and the folder identifier
-        * separated by a colon ":".
+        * Returns a combined identifier of this file, i.e. the storage UID and the
+        * folder identifier separated by a colon ":".
         *
         * @return string Combined storage and file identifier, e.g. StorageUID:path/and/fileName.png
         */
@@ -428,7 +425,8 @@ abstract class t3lib_file_AbstractFile implements t3lib_file_FileInterface {
        }
 
        /**
-        * Marks this file as deleted. This should only be used inside the File Abstraction Layer, as it is a low-level API method.
+        * Marks this file as deleted. This should only be used inside the
+        * File Abstraction Layer, as it is a low-level API method.
         *
         * @return void
         */
@@ -501,8 +499,8 @@ abstract class t3lib_file_AbstractFile implements t3lib_file_FileInterface {
        /**
         * Returns a publicly accessible URL for this file
         *
-        * WARNING: Access to the file may be restricted by further means, e.g. some web-based authentication. You have to take care of this
-        * yourself.
+        * WARNING: Access to the file may be restricted by further means, e.g. some
+        * web-based authentication. You have to take care of this yourself.
         *
         * @param bool  $relativeToCurrentScript   Determines whether the URL returned should be relative to the current script, in case it is relative at all (only for the LocalDriver)
         *
index 3d27322..5f0b27f 100644 (file)
@@ -34,6 +34,7 @@
  * @subpackage t3lib
  */
 class t3lib_file_Collection_FolderBasedFileCollection extends t3lib_file_Collection_AbstractFileCollection {
+
        /**
         * @var string
         */
index fd1284d..50e8c94 100644 (file)
  ***************************************************************/
 
 /**
- * A collection containing a static set of files. This collection is persisted to the database with references to all
- * files it contains.
+ * A collection containing a static set of files. This collection is persisted
+ * to the database with references to all files it contains.
  *
  * @author Andreas Wolf <andreas.wolf@ikt-werk.de>
  * @package TYPO3
  * @subpackage t3lib
  */
 class t3lib_file_Collection_StaticFileCollection extends t3lib_file_Collection_AbstractFileCollection {
+
        /**
         * @var string
         */
index faf89cb..1068ac1 100644 (file)
@@ -44,7 +44,8 @@ abstract class t3lib_file_Driver_AbstractDriver {
        protected $storage;
 
        /**
-        * A list of all supported hash algorithms, written all lower case and without any dashes etc. (e.g. sha1 instead of SHA-1)
+        * A list of all supported hash algorithms, written all lower case and
+        * without any dashes etc. (e.g. sha1 instead of SHA-1)
         * Be sure to set this in inherited classes!
         *
         * @var array
@@ -97,15 +98,16 @@ abstract class t3lib_file_Driver_AbstractDriver {
        }
 
        /**
-        * Initializes this object. This is called by the storage after the driver has been attached.
+        * Initializes this object. This is called by the storage after the driver
+        * has been attached.
         *
         * @return void
         */
        abstract public function initialize();
 
        /**
-        * Checks a fileName for validity. This could be overriden in concrete drivers if they have different file naming
-        * rules.
+        * Checks a fileName for validity. This could be overriden in concrete
+        * drivers if they have different file naming rules.
         *
         * @param string $fileName
         * @return boolean TRUE if file name is valid
@@ -156,7 +158,8 @@ abstract class t3lib_file_Driver_AbstractDriver {
        }
 
        /**
-        * Generic handler method for directory listings - gluing together the listing items is done
+        * Generic handler method for directory listings - gluing together the
+        * listing items is done
         *
         * @param string $path
         * @param integer $start
@@ -272,9 +275,10 @@ abstract class t3lib_file_Driver_AbstractDriver {
        abstract public function createFile($fileName, t3lib_file_Folder $parentFolder);
 
        /**
-        * Returns the contents of a file. Beware that this requires to load the complete file into memory and also may
-        * require fetching the file from an external location. So this might be an expensive operation (both in terms of
-        * processing resources and money) for large files.
+        * Returns the contents of a file. Beware that this requires to load the
+        * complete file into memory and also may require fetching the file from an
+        * external location. So this might be an expensive operation (both in terms
+        * of processing resources and money) for large files.
         *
         * @param t3lib_file_FileInterface $file
         * @return string The file contents
@@ -324,8 +328,8 @@ abstract class t3lib_file_Driver_AbstractDriver {
        abstract public function fileExistsInFolder($fileName, t3lib_file_Folder $folder);
 
        /**
-        * Returns a (local copy of) a file for processing it. When changing the file, you have to take care of replacing the
-        * current version yourself!
+        * Returns a (local copy of) a file for processing it. When changing the
+        * file, you have to take care of replacing the current version yourself!
         *
         * @abstract
         * @param t3lib_file_FileInterface $file
@@ -430,7 +434,7 @@ abstract class t3lib_file_Driver_AbstractDriver {
         */
        public function getFolder($identifier) {
                if (!$this->folderExists($identifier)) {
-                       throw new t3lib_file_exception_FolderDoesNotExistException("Folder $identifier does not exist.", 1320575630);
+                       throw new t3lib_file_exception_FolderDoesNotExistException('Folder "' . $identifier . '" does not exist.', 1320575630);
                }
 
                return t3lib_file_Factory::getInstance()->createFolderObject(
@@ -505,7 +509,6 @@ abstract class t3lib_file_Driver_AbstractDriver {
         */
        abstract public function copyFileWithinStorage(t3lib_file_FileInterface $file, t3lib_file_Folder $targetFolder, $fileName);
 
-
        /**
         * Folder equivalent to moveFileWithinStorage().
         *
@@ -526,10 +529,10 @@ abstract class t3lib_file_Driver_AbstractDriver {
         */
        abstract public function copyFolderWithinStorage(t3lib_file_Folder $folderToMove, t3lib_file_Folder $targetFolder, $newFileName);
 
-
        /**
-        * Removes a file from this storage. This does not check if the file is still used or if it is a bad idea to delete
-        * it for some other reason - this has to be taken care of in the upper layers (e.g. the Storage)!
+        * Removes a file from this storage. This does not check if the file is
+        * still used or if it is a bad idea to delete it for some other reason
+        * this has to be taken care of in the upper layers (e.g. the Storage)!
         *
         * @abstract
         * @param t3lib_file_FileInterface $file
@@ -559,10 +562,12 @@ abstract class t3lib_file_Driver_AbstractDriver {
        abstract public function addFileRaw($localFilePath, t3lib_file_Folder $targetFolder, $targetFileName);
 
        /**
-        * Deletes a file without access and usage checks. This should only be used internally.
+        * Deletes a file without access and usage checks.
+        * This should only be used internally.
         *
-        * This accepts an identifier instead of an object because we might want to delete files that have no object
-        * associated with (or we don't want to create an object for) them - e.g. when moving a file to another storage.
+        * This accepts an identifier instead of an object because we might want to
+        * delete files that have no object associated with (or we don't want to
+        * create an object for) them - e.g. when moving a file to another storage.
         *
         * @abstract
         * @param string $identifier
@@ -643,7 +648,8 @@ abstract class t3lib_file_Driver_AbstractDriver {
        abstract public function renameFolder(t3lib_file_Folder $folder, $newName);
 
        /**
-        * Checks if a given object or identifier is within a container, e.g. if a file or folder is within another folder.
+        * Checks if a given object or identifier is within a container, e.g. if
+        * a file or folder is within another folder.
         * This can e.g. be used to check for webmounts.
         *
         * @abstract
index 5196439..dbcbcf5 100644 (file)
@@ -33,8 +33,9 @@
  * @subpackage t3lib
  */
 class t3lib_file_Driver_DriverRegistry implements t3lib_Singleton {
+
        /**
-        * @var string[]
+        * @var array
         */
        protected $drivers = array();
 
@@ -105,7 +106,7 @@ class t3lib_file_Driver_DriverRegistry implements t3lib_Singleton {
         * @return void
         */
        public function addDriversToTCA() {
-               // Add driver to TCA of sys_file_storage
+                       // Add driver to TCA of sys_file_storage
                if (TYPO3_MODE !== 'BE') {
                        return;
                }
index eb84c3c..e1cc413 100644 (file)
@@ -34,6 +34,7 @@
  * @subpackage t3lib
  */
 class t3lib_file_Driver_LocalDriver extends t3lib_file_Driver_AbstractDriver {
+
        /**
         * The absolute base path. It always contains a trailing slash.
         *
@@ -49,8 +50,8 @@ class t3lib_file_Driver_LocalDriver extends t3lib_file_Driver_AbstractDriver {
        protected $supportedHashAlgorithms = array('sha1', 'md5');
 
        /**
-        * The base URL that points to this driver's storage. As long is this is not set, it is assumed that this folder
-        * is not publicly available
+        * The base URL that points to this driver's storage. As long is this
+        * is not set, it is assumed that this folder is not publicly available
         *
         * @var string
         */
@@ -82,7 +83,8 @@ class t3lib_file_Driver_LocalDriver extends t3lib_file_Driver_AbstractDriver {
        }
 
        /**
-        * Initializes this object. This is called by the storage after the driver has been attached.
+        * Initializes this object. This is called by the storage after the driver
+        * has been attached.
         *
         * @return void
         */
@@ -94,18 +96,19 @@ class t3lib_file_Driver_LocalDriver extends t3lib_file_Driver_AbstractDriver {
        }
 
        /**
-        * Determines the base URL for this driver, from the configuration or the TypoScript frontend object
+        * Determines the base URL for this driver, from the configuration or
+        * the TypoScript frontend object
         *
         * @return void
         */
        protected function determineBaseUrl() {
                if (t3lib_div::isFirstPartOfStr($this->absoluteBasePath, PATH_site)) {
-                       // TODO use site URL (where to get it from e.g. on CLI?)
+                               // TODO use site URL (where to get it from e.g. on CLI?)
                        if (is_object($GLOBALS['TSFE'])) {
                                $this->baseUri = $GLOBALS['TSFE']->absRefPrefix;
                        } else {
-                               // use site-relative URLs
-                               // TODO add unit test
+                                       // use site-relative URLs
+                                       // TODO add unit test
                                $this->baseUri = substr($this->absoluteBasePath, strlen(PATH_site));
                        }
                } elseif (isset($this->configuration['baseUri']) && t3lib_div::isValidUrl($this->configuration['baseUri'])) {
@@ -140,10 +143,11 @@ class t3lib_file_Driver_LocalDriver extends t3lib_file_Driver_AbstractDriver {
        }
 
        /**
-        * Returns the public URL to a file. For the local driver, this will always return a path relative to PATH_site.
+        * Returns the public URL to a file. For the local driver, this will always
+        * return a path relative to PATH_site.
         *
         * @param t3lib_file_FileInterface $file
-        * @param bool  $relativeToCurrentScript    Determines whether the URL returned should be relative to the current script, in case it is relative at all (only for the LocalDriver)
+        * @param bool $relativeToCurrentScript Determines whether the URL returned should be relative to the current script, in case it is relative at all (only for the LocalDriver)
         * @return string
         */
        public function getPublicUrl(t3lib_file_FileInterface $file, $relativeToCurrentScript = FALSE) {
@@ -159,14 +163,13 @@ class t3lib_file_Driver_LocalDriver extends t3lib_file_Driver_AbstractDriver {
                        );
                }
 
-                       // if requested, make the path relative to the current script in order to make it possible
+                       // If requested, make the path relative to the current script in order to make it possible
                        // to use the relative file
                if ($relativeToCurrentScript) {
                        $publicUrl = t3lib_utility_Path::getRelativePathTo(dirname(PATH_site . $publicUrl)) . basename($publicUrl);
                }
 
                return $publicUrl;
-
        }
 
        /**
@@ -271,7 +274,8 @@ class t3lib_file_Driver_LocalDriver extends t3lib_file_Driver_AbstractDriver {
        }
 
        /**
-        * Returns a string where any character not matching [.a-zA-Z0-9_-] is substituted by '_'
+        * Returns a string where any character not matching [.a-zA-Z0-9_-] is
+        * substituted by '_'
         * Trailing dots are removed
         *
         * previously in t3lib_basicFileFunctions::cleanFileName()
@@ -283,7 +287,7 @@ class t3lib_file_Driver_LocalDriver extends t3lib_file_Driver_AbstractDriver {
        protected function sanitizeFileName($fileName, $charset = '') {
                        // Handle UTF-8 characters
                if ($GLOBALS['TYPO3_CONF_VARS']['SYS']['UTF8filesystem']) {
-                               // allow ".", "-", 0-9, a-z, A-Z and everything beyond U+C0 (latin capital letter a with grave)
+                               // Allow ".", "-", 0-9, a-z, A-Z and everything beyond U+C0 (latin capital letter a with grave)
                        $cleanFileName = preg_replace('/[\x00-\x2C\/\x3A-\x3F\x5B-\x60\x7B-\xBF]/u', '_', trim($fileName));
 
                        // Handle other character sets
@@ -318,7 +322,8 @@ class t3lib_file_Driver_LocalDriver extends t3lib_file_Driver_AbstractDriver {
        }
 
        /**
-        * Generic wrapper for extracting a list of items from a path. The extraction itself is done by the given handler method
+        * Generic wrapper for extracting a list of items from a path. The
+        * extraction itself is done by the given handler method
         *
         * @param string $path
         * @param integer $start The position to start the listing; if not set, start from the beginning
@@ -339,8 +344,9 @@ class t3lib_file_Driver_LocalDriver extends t3lib_file_Driver_AbstractDriver {
                        $start--;
                }
 
-                       // Fetch the files and folders and sort them by name; we have to do this here because the directory iterator
-                       // does return them in an arbitrary order
+                       // Fetch the files and folders and sort them by name; we have to do
+                       // this here because the directory iterator does return them in
+                       // an arbitrary order
                $items = $this->getFileAndFoldernamesInPath($realPath);
                natcasesort($items);
                $iterator = new ArrayIterator($items);
@@ -564,7 +570,7 @@ class t3lib_file_Driver_LocalDriver extends t3lib_file_Driver_AbstractDriver {
         */
        public function hash(t3lib_file_FileInterface $file, $hashAlgorithm) {
                if (!in_array($hashAlgorithm, $this->getSupportedHashAlgorithms())) {
-                       throw new InvalidArgumentException("Hash algorithm $hashAlgorithm is not supported.", 1304964032);
+                       throw new InvalidArgumentException('Hash algorithm "' . $hashAlgorithm . '" is not supported.', 1304964032);
                }
 
                switch ($hashAlgorithm) {
@@ -609,8 +615,7 @@ class t3lib_file_Driver_LocalDriver extends t3lib_file_Driver_AbstractDriver {
 
                if (is_uploaded_file($localFilePath)) {
                        $moveResult = move_uploaded_file($localFilePath, $targetPath);
-               }
-               else {
+               } else {
                        $moveResult = rename($localFilePath, $targetPath);
                }
 
@@ -619,7 +624,8 @@ class t3lib_file_Driver_LocalDriver extends t3lib_file_Driver_AbstractDriver {
                }
 
                clearstatcache();
-               t3lib_div::fixPermissions($targetPath); // Change the permissions of the file
+                       // Change the permissions of the file
+               t3lib_div::fixPermissions($targetPath);
 
                $fileInfo = $this->getFileInfoByIdentifier($relativeTargetPath);
 
@@ -805,8 +811,8 @@ class t3lib_file_Driver_LocalDriver extends t3lib_file_Driver_AbstractDriver {
        }
 
        /**
-        * Creates a map of old and new file/folder identifiers after renaming or moving a folder. The old identifier is used
-        * as the key, the new one as the value.
+        * Creates a map of old and new file/folder identifiers after renaming or
+        * moving a folder. The old identifier is used as the key, the new one as the value.
         *
         * @param array $filesAndFolders
         * @param string $relativeSourcePath
@@ -1025,7 +1031,8 @@ class t3lib_file_Driver_LocalDriver extends t3lib_file_Driver_AbstractDriver {
        }
 
        /**
-        * Returns a (local copy of) a file for processing it. This makes a copy first when in writable mode, so if you change the file,
+        * Returns a (local copy of) a file for processing it. This makes a copy
+        * first when in writable mode, so if you change the file,
         * you have to update it yourself afterwards.
         *
         * @param t3lib_file_FileInterface $file
@@ -1089,7 +1096,8 @@ class t3lib_file_Driver_LocalDriver extends t3lib_file_Driver_AbstractDriver {
        }
 
        /**
-        * Checks if a given object or identifier is within a container, e.g. if a file or folder is within another folder.
+        * Checks if a given object or identifier is within a container, e.g. if
+        * a file or folder is within another folder.
         * This can e.g. be used to check for webmounts.
         *
         * @param t3lib_file_Folder $container
@@ -1119,10 +1127,10 @@ class t3lib_file_Driver_LocalDriver extends t3lib_file_Driver_AbstractDriver {
         */
        public function createFile($fileName, t3lib_file_Folder $parentFolder) {
                if (!$this->isValidFilename($fileName)) {
-                       throw new t3lib_file_exception_InvalidFileNameException("Invalid characters in fileName '$fileName'.", 1320572272);
+                       throw new t3lib_file_exception_InvalidFileNameException('Invalid characters in fileName "' . $fileName . '"', 1320572272);
                }
                $filePath = $parentFolder->getIdentifier() . ltrim($fileName, '/');
-               // TODO set permissions of new file
+                       // TODO set permissions of new file
                $result = touch($this->absoluteBasePath . $filePath);
                clearstatcache();
                if ($result !== TRUE) {
@@ -1134,8 +1142,9 @@ class t3lib_file_Driver_LocalDriver extends t3lib_file_Driver_AbstractDriver {
        }
 
        /**
-        * Returns the contents of a file. Beware that this requires to load the complete file into memory and also may
-        * require fetching the file from an external location. So this might be an expensive operation (both in terms of
+        * Returns the contents of a file. Beware that this requires to load the
+        * complete file into memory and also may require fetching the file from an
+        * external location. So this might be an expensive operation (both in terms of
         * processing resources and money) for large files.
         *
         * @param t3lib_file_FileInterface $file
@@ -1161,7 +1170,7 @@ class t3lib_file_Driver_LocalDriver extends t3lib_file_Driver_AbstractDriver {
                $result = file_put_contents($filePath, $contents);
 
                if ($result === FALSE) {
-                       throw new RuntimeException('Setting contents of file ' . $file->getIdentifier() . ' failed.', 1325419305);
+                       throw new RuntimeException('Setting contents of file "' . $file->getIdentifier() . '" failed.', 1325419305);
                }
 
                return $result;
index 084ce6b..9af39c1 100644 (file)
  * @package TYPO3
  * @subpackage t3lib
  */
-// TODO implement constructor-level caching
+
+       // TODO implement constructor-level caching
 class t3lib_file_Factory implements t3lib_Singleton {
+
        /**
         * Gets a singleton instance of this class.
         *
@@ -85,7 +87,8 @@ class t3lib_file_Factory implements t3lib_Singleton {
        }
 
        /**
-        * Creates an instance of the storage from given UID. The $recordData can be supplied to increase performance.
+        * Creates an instance of the storage from given UID. The $recordData can
+        * be supplied to increase performance.
         *
         * @param integer $uid The uid of the storage to instantiate.
         * @param array $recordData The record row from database.
@@ -120,10 +123,11 @@ class t3lib_file_Factory implements t3lib_Singleton {
                                );
 
                                // If any other (real) storage is requested:
-                       } elseif (count($recordData) === 0 || $recordData['uid'] !== $uid) {    // Get storage data if not already supplied as argument to this function
+                               // Get storage data if not already supplied as argument to this function
+                       } elseif (count($recordData) === 0 || $recordData['uid'] !== $uid) {
                                /** @var $GLOBALS['TYPO3_DB'] t3lib_DB */
                                $recordData = $GLOBALS['TYPO3_DB']->exec_SELECTgetSingleRow('*', 'sys_file_storage', 'uid=' . intval($uid) . ' AND deleted=0');
-                               if (!is_array($recordData) || count($recordData) === 0) {
+                               if (!is_array($recordData)) {
                                        throw new InvalidArgumentException('No storage found for given UID.', 1314085992);
                                }
                        }
@@ -180,7 +184,7 @@ class t3lib_file_Factory implements t3lib_Singleton {
                                                'uid=' . intval($uid) . ' AND deleted=0'
                                );
 
-                               if (!is_array($recordData) || count($recordData) === 0) {
+                               if (!is_array($recordData)) {
                                        throw new InvalidArgumentException('No collection found for given UID.', 1314085992);
                                }
                        }
@@ -258,7 +262,8 @@ class t3lib_file_Factory implements t3lib_Singleton {
        }
 
        /**
-        * Creates an instance of the file given UID. The $fileData can be supplied to increase performance.
+        * Creates an instance of the file given UID. The $fileData can be supplied
+        * to increase performance.
         *
         * @param integer $uid The uid of the file to instantiate.
         * @param array $fileData The record row from database.
@@ -274,7 +279,7 @@ class t3lib_file_Factory implements t3lib_Singleton {
                        if (empty($fileData)) {
                                /** @var $GLOBALS['TYPO3_DB'] t3lib_DB */
                                $fileData = $GLOBALS['TYPO3_DB']->exec_SELECTgetSingleRow('*', 'sys_file', 'uid=' . intval($uid) . ' AND deleted=0');
-                               if (!is_array($fileData) || count($fileData) === 0) {
+                               if (!is_array($fileData)) {
                                        throw new InvalidArgumentException('No file found for given UID.', 1317178604);
                                }
                        }
@@ -298,7 +303,8 @@ class t3lib_file_Factory implements t3lib_Singleton {
                        $storageUid = $parts[0];
                        $fileIdentifier = $parts[1];
                } else {
-                       // We only got a path: Go into backwards compatibility mode and use virtual Storage (uid=0)
+                               // We only got a path: Go into backwards compatibility mode and
+                               // use virtual Storage (uid=0)
                        $storageUid = 0;
                        $fileIdentifier = $parts[0];
                }
@@ -307,13 +313,13 @@ class t3lib_file_Factory implements t3lib_Singleton {
        }
 
        /**
-        * bulk function, can be used for anything to get a file or folder
+        * Bulk function, can be used for anything to get a file or folder
         *
-        * 1. it's a UID
-        * 2. it's a combined identifier
-        * 3. it's just a path/filename (coming from the oldstyle/backwards compatibility)
+        * 1. It's a UID
+        * 2. It's a combined identifier
+        * 3. It's just a path/filename (coming from the oldstyle/backwards compatibility)
         *
-        * files, previously laid on fileadmin/ or something, will be "mapped" to the storage the file is
+        * Files, previously laid on fileadmin/ or something, will be "mapped" to the storage the file is
         * in now. Files like typo3temp/ or typo3conf/ will be moved to the first writable storage
         * in its processing folder
         *
@@ -326,13 +332,12 @@ class t3lib_file_Factory implements t3lib_Singleton {
         * @return t3lib_file_FileInterface|t3lib_file_Folder
         */
        public function retrieveFileOrFolderObject($input) {
-                       // easy function to deal with that, could be dropped in the future
+                       // Easy function to deal with that, could be dropped in the future
                        // if we know where to use this function
                if (t3lib_div::isFirstPartOfStr($input, 'file:')) {
                        $input = substr($input, 5);
                        return $this->retrieveFileOrFolderObject($input);
                } elseif (t3lib_utility_Math::canBeInterpretedAsInteger($input)) {
-                               //
                        return $this->getFileObject($input);
                } elseif (strpos($input, ':')) {
                                // path or folder
@@ -358,7 +363,8 @@ class t3lib_file_Factory implements t3lib_Singleton {
                        $storageUid = $parts[0];
                        $folderIdentifier = $parts[1];
                } else {
-                       // We only got a path: Go into backwards compatibility mode and use virtual Storage (uid=0)
+                               // We only got a path: Go into backwards compatibility mode and
+                               // use virtual Storage (uid=0)
                        $storageUid = 0;
                        $folderIdentifier = $parts[0];
                }
@@ -389,7 +395,8 @@ class t3lib_file_Factory implements t3lib_Singleton {
        }
 
        /**
-        * Creates a file object from an array of file data. Requires a database row to be fetched.
+        * Creates a file object from an array of file data. Requires a database
+        * row to be fetched.
         *
         * @param array $fileData
         * @return t3lib_file_File
@@ -407,7 +414,8 @@ class t3lib_file_Factory implements t3lib_Singleton {
        }
 
        /**
-        * Creates an instance of a FileReference object. The $fileReferenceData can be supplied to increase performance.
+        * Creates an instance of a FileReference object. The $fileReferenceData can
+        * be supplied to increase performance.
         *
         * @param integer $uid The uid of the file usage (sys_file_reference) to instantiate.
         * @param array $fileReferenceData The record row from database.
@@ -419,11 +427,11 @@ class t3lib_file_Factory implements t3lib_Singleton {
                }
 
                if (!$this->fileReferenceInstances[$uid]) {
-                       // Fetches data in case $fileData is empty
+                               // Fetches data in case $fileData is empty
                        if (empty($fileReferenceData)) {
                                /** @var $GLOBALS['TYPO3_DB'] t3lib_DB */
                                $fileReferenceData = $GLOBALS['TYPO3_DB']->exec_SELECTgetSingleRow('*', 'sys_file_reference', 'uid=' . intval($uid) . ' AND deleted=0');
-                               if (!is_array($fileReferenceData) || count($fileReferenceData) === 0) {
+                               if (!is_array($fileReferenceData)) {
                                        throw new InvalidArgumentException('No fileusage (sys_file_reference) found for given UID.', 1317178794);
                                }
                        }
@@ -435,7 +443,8 @@ class t3lib_file_Factory implements t3lib_Singleton {
        }
 
        /**
-        * Creates a file usage object from an array of fileReference data (from sys_file_reference table).
+        * Creates a file usage object from an array of fileReference data
+        * from sys_file_reference table.
         * Requires a database row to be already fetched and present.
         *
         * @param array $fileReferenceData
@@ -467,7 +476,7 @@ class t3lib_file_Factory implements t3lib_Singleton {
                /* @var t3lib_file_Repository_ProcessedFileRepository $repository */
                $repository = t3lib_div::makeInstance('t3lib_file_Repository_ProcessedFileRepository');
 
-                       // check if this file already exists in the DB
+                       // Check if this file already exists in the DB
                $repository->populateDataOfProcessedFileObject($processedFileObject);
 
                return $processedFileObject;
@@ -478,4 +487,4 @@ if (defined('TYPO3_MODE') && isset($GLOBALS['TYPO3_CONF_VARS'][TYPO3_MODE]['XCLA
        include_once($GLOBALS['TYPO3_CONF_VARS'][TYPO3_MODE]['XCLASS']['t3lib/file/Factory.php']);
 }
 
-?>
+?>
\ No newline at end of file
index cdb1f69..cb52c6c 100644 (file)
@@ -36,7 +36,8 @@
 class t3lib_file_File extends t3lib_file_AbstractFile {
 
        /**
-        * File indexing status. True, if the file is indexed in the database; NULL is the default value, this means that the index status is unknown
+        * File indexing status. True, if the file is indexed in the database;
+        * NULL is the default value, this means that the index status is unknown
         *
         * @var bool
         */
@@ -50,7 +51,8 @@ class t3lib_file_File extends t3lib_file_AbstractFile {
        protected $indexingInProgress = FALSE;
 
        /**
-        * Contains the names of all properties that have been update since the instantiation of this object
+        * Contains the names of all properties that have been update since the
+        * instantiation of this object
         *
         * @var array
         */
@@ -63,9 +65,9 @@ class t3lib_file_File extends t3lib_file_AbstractFile {
         * don't mix it up with mime types
         *********************************************/
 
-
        /**
-        * Constructor for a file object. Should normally not be used directly, use the corresponding factory methods instead.
+        * Constructor for a file object. Should normally not be used directly, use
+        * the corresponding factory methods instead.
         *
         * @param array $fileData
         * @param t3lib_file_Storage $storage
@@ -91,7 +93,6 @@ class t3lib_file_File extends t3lib_file_AbstractFile {
         * VARIOUS FILE PROPERTY GETTERS
         *******************************/
 
-
        /**
         * Returns a property value
         *
@@ -119,11 +120,6 @@ class t3lib_file_File extends t3lib_file_AbstractFile {
                return parent::getProperties();
        }
 
-
-
-
-
-
        /******************
         * CONTENTS RELATED
         ******************/
@@ -149,11 +145,6 @@ class t3lib_file_File extends t3lib_file_AbstractFile {
        }
 
 
-
-
-
-
-
        /***********************
         * INDEX RELATED METHODS
         ***********************/
@@ -193,7 +184,7 @@ class t3lib_file_File extends t3lib_file_AbstractFile {
                        $this->mergeIndexRecord($indexRecord);
                        $this->indexed = TRUE;
                } else {
-                       throw new RuntimeException('Could not load index record for ' . $this->getIdentifier(), 1321288316);
+                       throw new RuntimeException('Could not load index record for "' . $this->getIdentifier() . '"', 1321288316);
                }
        }
 
@@ -205,17 +196,19 @@ class t3lib_file_File extends t3lib_file_AbstractFile {
         */
        protected function mergeIndexRecord(array $recordData) {
                if ($this->properties['uid'] != 0) {
-                       throw new InvalidArgumentException("uid property is already set. Cannot merge index record.", 1321023156);
+                       throw new InvalidArgumentException('uid property is already set. Cannot merge index record.', 1321023156);
                }
 
                $this->properties = array_merge($this->properties, $recordData);
-               // TODO check for any properties that come from the driver and would change -- these might have to be updated in the index record
+               // TODO check for any properties that come from the driver and would
+               // change -- these might have to be updated in the index record
        }
 
        /**
         * Updates the properties of this file, e.g. after re-indexing or moving it.
-        * By default, only properties that exist as a key in the $properties array are overwritten. If you want to
-        * explicitly unset a property, set the corresponding key to NULL in the array.
+        * By default, only properties that exist as a key in the $properties array
+        * are overwritten. If you want to explicitly unset a property, set the
+        * corresponding key to NULL in the array.
         *
         * NOTE: This method should not be called from outside the File Abstraction Layer (FAL)!
         *
@@ -224,8 +217,9 @@ class t3lib_file_File extends t3lib_file_AbstractFile {
         * @internal
         */
        public function updateProperties(array $properties) {
-                       // setting identifier and name to update values; we have to do this here because we might need a new identifier
-                       // when loading (and thus possibly indexing) a file.
+                       // Setting identifier and name to update values; we have to do this
+                       // here because we might need a new identifier when loading
+                       // (and thus possibly indexing) a file.
                if (isset($properties['identifier'])) {
                        $this->identifier = $properties['identifier'];
                }
@@ -246,12 +240,13 @@ class t3lib_file_File extends t3lib_file_AbstractFile {
                                if (!in_array($key, $this->updatedProperties)) {
                                        $this->updatedProperties[] = $key;
                                }
-                               // TODO check if we should completely remove properties that are set to NULL
+                                       // TODO check if we should completely remove properties that
+                                       // are set to NULL
                                $this->properties[$key] = $value;
                        }
                }
 
-                       // updating indexing status
+                       // Updating indexing status
                if (isset($properties['uid']) && intval($properties['uid']) > 0) {
                        $this->indexed = TRUE;
                }
@@ -273,10 +268,6 @@ class t3lib_file_File extends t3lib_file_AbstractFile {
                return $this->updatedProperties;
        }
 
-
-
-
-
        /****************************************
         * STORAGE AND MANAGEMENT RELATED METHODS
         ****************************************/
@@ -292,18 +283,16 @@ class t3lib_file_File extends t3lib_file_AbstractFile {
        }
 
 
-
-
        /*****************
         * SPECIAL METHODS
         *****************/
 
        /**
-        * creates a MD5 hash checksum based on the combined identifier of the file,
+        * Creates a MD5 hash checksum based on the combined identifier of the file,
         * the files' mimetype and the systems' encryption key.
         * used to generate a thumbnail, and this hash is checked if valid
         *
-        * @static
+        * @todo maybe t3lib_div::hmac() could be used?
         * @param t3lib_file_File $file the file to create the checksum from
         * @return string the MD5 hash
         */
@@ -348,11 +337,11 @@ class t3lib_file_File extends t3lib_file_AbstractFile {
                        ),
                        'checksum' => $this->calculateChecksum()
                );
-               foreach ($this->properties AS $key => $value) {
+               foreach ($this->properties as $key => $value) {
                        $array[$key] = $value;
                }
                $stat = $this->storage->getFileInfo($this);
-               foreach ($stat AS $key => $value) {
+               foreach ($stat as $key => $value) {
                        $array[$key] = $value;
                }
                return $array;
index 698dfc2..7f43a60 100644 (file)
@@ -97,10 +97,6 @@ interface t3lib_file_FileInterface extends t3lib_file_ResourceInterface {
         */
        public function getCreationTime();
 
-
-
-
-
        /******************
         * CONTENTS RELATED
         ******************/
@@ -114,8 +110,12 @@ interface t3lib_file_FileInterface extends t3lib_file_ResourceInterface {
 
        /**
         * Replace the current file contents with the given string.
-        * @TODO: Consider to remove this function from the interface, as its implementation in FileInUse could cause unforseen side-effects by setting contents on the original file instead of just on the Usage of the file.
-        * @TODO: At the same time, it could be considered whether to make the whole interface a read-only FileInterface, so that all file management and modification functions are removed...
+        * @TODO: Consider to remove this function from the interface, as its
+        * implementation in FileInUse could cause unforseen side-effects by setting
+        * contents on the original file instead of just on the Usage of the file.
+        * @TODO: At the same time, it could be considered whether to make the whole
+        * interface a read-only FileInterface, so that all file management and
+        * modification functions are removed...
         *
         * @param string $contents The contents to write to the file.
         * @return t3lib_file_File The file object (allows chaining).
@@ -150,10 +150,10 @@ interface t3lib_file_FileInterface extends t3lib_file_ResourceInterface {
        /**
         * Returns a publicly accessible URL for this file
         *
-        * WARNING: Access to the file may be restricted by further means, e.g. some web-based authentication. You have to take care of this
-        * yourself.
+        * WARNING: Access to the file may be restricted by further means, e.g.
+        * some web-based authentication. You have to take care of this yourself.
         *
-        * @param bool  $relativeToCurrentScript   Determines whether the URL returned should be relative to the current script, in case it is relative at all (only for the LocalDriver)
+        * @param bool $relativeToCurrentScript Determines whether the URL returned should be relative to the current script, in case it is relative at all (only for the LocalDriver)
         *
         * @return string
         */
index 6dda97e..c6691b2 100644 (file)
@@ -84,7 +84,8 @@ class t3lib_file_FileReference implements t3lib_file_FileInterface {
        protected $originalFile;
 
        /**
-        * Constructor for a file in use object. Should normally not be used directly, use the corresponding factory methods instead.
+        * Constructor for a file in use object. Should normally not be used
+        * directly, use the corresponding factory methods instead.
         *
         * @param array $fileReferenceData
         * @param t3lib_file_Factory $factory
@@ -214,7 +215,7 @@ class t3lib_file_FileReference implements t3lib_file_FileInterface {
         * @return integer
         */
        public function getUid() {
-               return $this->propertiesOfFileReference['uid'];
+               return (int)$this->propertiesOfFileReference['uid'];
        }
 
        /**
@@ -223,7 +224,7 @@ class t3lib_file_FileReference implements t3lib_file_FileInterface {
         * @return integer
         */
        public function getSize() {
-               return $this->originalFile->getSize();
+               return (int)$this->originalFile->getSize();
        }
 
        /**
@@ -260,7 +261,7 @@ class t3lib_file_FileReference implements t3lib_file_FileInterface {
         * @return integer
         */
        public function getModificationTime() {
-               $this->originalFile->getModificationTime();
+               return (int)$this->originalFile->getModificationTime();
        }
 
        /**
@@ -269,7 +270,7 @@ class t3lib_file_FileReference implements t3lib_file_FileInterface {
         * @return integer
         */
        public function getCreationTime() {
-               $this->originalFile->getCreationTime();
+               return (int)$this->originalFile->getCreationTime();
        }
 
        /**
@@ -278,7 +279,7 @@ class t3lib_file_FileReference implements t3lib_file_FileInterface {
         * @return integer $fileType
         */
        public function getType() {
-               return $this->originalFile->getType();
+               return (int)$this->originalFile->getType();
        }
 
 
@@ -340,13 +341,14 @@ class t3lib_file_FileReference implements t3lib_file_FileInterface {
        }
 
        /**
-        * Deletes only this particular FileReference from the persistence layer (database table sys_file_reference)
-        * but leaves the original file untouched.
+        * Deletes only this particular FileReference from the persistence layer
+        * (database table sys_file_reference) but leaves the original file untouched.
         *
         * @return boolean TRUE if deletion succeeded
         */
        public function delete() {
-               // TODO: Implement this function. This should only delete the FileReference (sys_file_reference) record, not the file itself.
+                       // TODO: Implement this function. This should only delete the
+                       // FileReference (sys_file_reference) record, not the file itself.
                throw new Exception('Function not implemented FileReference::delete().');
                return $this->fileRepository->removeUsageRecord($this);
        }
@@ -358,7 +360,8 @@ class t3lib_file_FileReference implements t3lib_file_FileInterface {
         * @return t3lib_file_FileReference
         */
        public function rename($newName) {
-               // TODO: Implement this function. This should only rename the FileReference (sys_file_reference) record, not the file itself.
+                       // TODO: Implement this function. This should only rename the
+                       // FileReference (sys_file_reference) record, not the file itself.
                throw new Exception('Function not implemented FileReference::rename().');
                return $this->fileRepository->renameUsageRecord($this, $newName);
        }
@@ -371,8 +374,8 @@ class t3lib_file_FileReference implements t3lib_file_FileInterface {
        /**
         * Returns a publicly accessible URL for this file
         *
-        * WARNING: Access to the file may be restricted by further means, e.g. some web-based authentication. You have to take care of this
-        * yourself.
+        * WARNING: Access to the file may be restricted by further means, e.g.
+        * some web-based authentication. You have to take care of this yourself.
         *
         * @param bool  $relativeToCurrentScript   Determines whether the URL returned should be relative to the current script, in case it is relative at all (only for the LocalDriver)
         *
@@ -384,8 +387,9 @@ class t3lib_file_FileReference implements t3lib_file_FileInterface {
 
        /**
         * Returns TRUE if this file is indexed.
-        * This is always true for FileReference objects, as they rely on a sys_file_reference record to be present,
-        * which in turn can only exist if the original file is indexed.
+        * This is always true for FileReference objects, as they rely on a
+        * sys_file_reference record to be present, which in turn can only exist if
+        * the original file is indexed.
         *
         * @return boolean
         */
@@ -434,4 +438,4 @@ if (defined('TYPO3_MODE') && isset($GLOBALS['TYPO3_CONF_VARS'][TYPO3_MODE]['XCLA
        include_once($GLOBALS['TYPO3_CONF_VARS'][TYPO3_MODE]['XCLASS']['t3lib/file/FileReference.php']);
 }
 
-?>
+?>
\ No newline at end of file
index 55c6992..9271a61 100644 (file)
 
 
 /**
- * A folder that groups files in a storage. This may be a folder on the local disk, a bucket in Amazon S3
- * or a user or a tag in Flickr.
+ * A folder that groups files in a storage. This may be a folder on the local
+ * disk, a bucket in Amazon S3 or a user or a tag in Flickr.
  *
- * This object is not persisted in TYPO3 locally, but created on the fly by storage drivers for the folders they "offer".
+ * This object is not persisted in TYPO3 locally, but created on the fly by
+ * storage drivers for the folders they "offer".
  *
- * Some folders serve as a physical container for files (e.g. folders on the local disk, S3 buckets or Flickr users).
- * Other folders just group files by a certain criterion, e.g. a tag.
+ * Some folders serve as a physical container for files (e.g. folders on the
+ * local disk, S3 buckets or Flickr users). Other folders just group files by a
+ * certain criterion, e.g. a tag.
  * The way this is implemented depends on the storage driver.
  *
  * @author Andreas Wolf <andreas.wolf@ikt-werk.de>
@@ -110,8 +112,8 @@ class t3lib_file_Folder implements t3lib_file_ResourceInterface {
        }
 
        /**
-        * Returns the path of this folder inside the storage. It depends on the type of storage whether this is a real
-        * path or just some unique identifier.
+        * Returns the path of this folder inside the storage. It depends on the
+        * type of storage whether this is a real path or just some unique identifier.
         *
         * @return string
         */
@@ -120,14 +122,13 @@ class t3lib_file_Folder implements t3lib_file_ResourceInterface {
        }
 
        /**
-        * Returns a combined identifier of this folder, i.e. the storage UID and the folder identifier
-        * separated by a colon ":".
+        * Returns a combined identifier of this folder, i.e. the storage UID and
+        * the folder identifier separated by a colon ":".
         *
         * @return string Combined storage and folder identifier, e.g. StorageUID:folder/path/
         */
        public function getCombinedIdentifier() {
-               // @todo $this->properties is never defined nor used here
-
+                       // @todo $this->properties is never defined nor used here
                if (is_array($this->properties) && t3lib_utility_Math::canBeInterpretedAsInteger($this->properties['storage'])) {
                        $combinedIdentifier = $this->properties['storage'].':'.$this->getIdentifier();
                } else {
@@ -147,7 +148,7 @@ class t3lib_file_Folder implements t3lib_file_ResourceInterface {
         * @return t3lib_file_File[]
         */
        public function getFiles($pattern = '', $start = 0, $numberOfItems = 0) {
-               // TODO fetch
+                       // TODO fetch
                /** @var $factory t3lib_file_Factory */
                $factory = t3lib_div::makeInstance('t3lib_file_Factory');
                $fileArray = $this->storage->getFileList($this->identifier, $pattern, $start, $numberOfItems);
@@ -160,10 +161,11 @@ class t3lib_file_Folder implements t3lib_file_ResourceInterface {
        }
 
        /**
-        * Returns amount of all files within this folder, optionally filtered by the given pattern
+        * Returns amount of all files within this folder, optionally filtered by
+        * the given pattern
         *
         * @param string $pattern
-        * @return int
+        * @return integer
         */
        public function getFileCount($pattern = '') {
                return count($this->storage->getFileList($this->identifier, $pattern));
@@ -203,8 +205,9 @@ class t3lib_file_Folder implements t3lib_file_ResourceInterface {
                        /** @var $factory t3lib_file_Factory */
                        $factory = t3lib_div::makeInstance('t3lib_file_Factory');
 
-                               // TODO this will not work with non-hierarchical storages -> the identifier for subfolders is not composed of
-                               // the current item's identifier for these
+                               // TODO this will not work with non-hierarchical storages
+                               // -> the identifier for subfolders is not composed of the
+                               // current item's identifier for these
                        foreach ($folderArray as $folder) {
                                $folderObjects[] = $factory->createFolderObject($this->storage, $this->identifier . $folder['name'] . '/', $folder['name']);
                        }
@@ -214,7 +217,8 @@ class t3lib_file_Folder implements t3lib_file_ResourceInterface {
        }
 
        /**
-        * Adds a file from the local server disk. If the file already exists and overwriting is disabled,
+        * Adds a file from the local server disk. If the file already exists and
+        * overwriting is disabled,
         *
         * @param string $localFilePath
         * @param string $fileName
@@ -295,7 +299,7 @@ class t3lib_file_Folder implements t3lib_file_ResourceInterface {
        }
 
        /**
-        * Movies folder to a target folder
+        * Moves folder to a target folder
         *
         * @param t3lib_file_Folder $targetFolder Target folder to move to.
         * @param string $targetFolderName an optional destination fileName
@@ -347,7 +351,7 @@ class t3lib_file_Folder implements t3lib_file_ResourceInterface {
         * @internal
         */
        public function updateProperties(array $properties) {
-                       // setting identifier and name to update values
+                       // Setting identifier and name to update values
                if (isset($properties['identifier'])) {
                        $this->identifier = $properties['identifier'];
                }
index c0751c5..5d4bed9 100644 (file)
  * @subpackage t3lib
  */
 class t3lib_file_ProcessedFile extends t3lib_file_AbstractFile {
+
        /*********************************************
         * FILE PROCESSING CONTEXTS
         *********************************************/
 
        /**
-        * basic processing context to get a processed
-        * image with smaller width/height to render a preview
+        * Basic processing context to get a processed image with smaller
+        * width/height to render a preview
         */
        const CONTEXT_IMAGEPREVIEW = 'image.preview';
 
@@ -72,10 +73,9 @@ class t3lib_file_ProcessedFile extends t3lib_file_AbstractFile {
         */
        protected $originalFile;
 
-
-
        /**
-        * Constructor for a file processing object. Should normally not be used directly, use the corresponding factory methods instead.
+        * Constructor for a file processing object. Should normally not be used
+        * directly, use the corresponding factory methods instead.
         *
         * @param t3lib_file_File $originalFile
         * @param string $context
@@ -155,7 +155,7 @@ class t3lib_file_ProcessedFile extends t3lib_file_AbstractFile {
        }
 
        /**
-        * @return \t3lib_file_File
+        * @return t3lib_file_File
         */
        public function getOriginalFile() {
                return $this->originalFile;
@@ -186,7 +186,7 @@ class t3lib_file_ProcessedFile extends t3lib_file_AbstractFile {
         * @return array
         */
        public function toArray() {
-               // @todo: define what we need here
+                       // @todo: define what we need here
                return array(
                        'storage' => $this->getStorage()->getUid(),
                        'identifier' => $this->getIdentifier(),
index ffb9337..a6e82f5 100644 (file)
@@ -146,6 +146,7 @@ abstract class t3lib_file_Repository_AbstractRepository implements Tx_Extbase_Pe
                while ($row = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res)) {
                        $itemList[] = $this->createDomainObject($row);
                }
+               $GLOBALS['TYPO3_DB']->sql_free_result($res);
 
                return $itemList;
        }
@@ -184,7 +185,7 @@ abstract class t3lib_file_Repository_AbstractRepository implements Tx_Extbase_Pe
         * Finds an object matching the given identifier.
         *
         * @param int $uid The identifier of the object to find
-        * @return object The matching object if found, otherwise NULL
+        * @return object The matching object
         * @api
         */
        public function findByUid($uid) {
@@ -194,8 +195,8 @@ abstract class t3lib_file_Repository_AbstractRepository implements Tx_Extbase_Pe
 
                $row = $GLOBALS['TYPO3_DB']->exec_SELECTgetSingleRow('*', $this->table, 'uid=' . intval($uid) . ' AND deleted=0');
 
-               if (count($row) == 0) {
-                       throw new RuntimeException("Could not find row with uid $uid in table $this->table.", 1314354065);
+               if (count($row) === 0) {
+                       throw new RuntimeException('Could not find row with uid "' . $uid .'" in table $this->table.', 1314354065);
                }
 
                return $this->createDomainObject($row);
index fad1109..bc31e20 100644 (file)
@@ -35,6 +35,7 @@
  * @subpackage t3lib
  */
 class t3lib_file_Repository_FileCollectionRepository extends t3lib_collection_RecordCollectionRepository {
+
        /**
         * @var string
         */
@@ -48,6 +49,7 @@ class t3lib_file_Repository_FileCollectionRepository extends t3lib_collection_Re
        /**
         * Finds a record collection by uid.
         *
+        * @todo the parent function throws already an exception if not found
         * @param integer $uid The uid to be looked up
         * @return NULL|t3lib_file_Collection_AbstractFileCollection
         */
@@ -56,7 +58,7 @@ class t3lib_file_Repository_FileCollectionRepository extends t3lib_collection_Re
 
                if ($object === NULL) {
                        throw new RuntimeException(
-                               'Could not find row with uid ' . $uid . ' in table ' . $this->table,
+                               'Could not find row with uid "' . $uid . '" in table "' . $this->table . '"',
                                1314354065
                        );
                }
index 4b706d2..c86b66c 100644 (file)
 class t3lib_file_Repository_FileRepository extends t3lib_file_Repository_AbstractRepository {
 
        /**
-        * The main object type of this class. In some cases (fileReference) this repository can also return
-        * FileReference objects, implementing the common FileInterface.
+        * The main object type of this class. In some cases (fileReference) this
+        * repository can also return FileReference objects, implementing the
+        * common FileInterface.
         *
         * @var string
         */
        protected $objectType = 't3lib_file_File';
 
        /**
-        * Main File object storage table. Note that this repository also works on the sys_file_reference table
-        * when returning FileReference objects.
+        * Main File object storage table. Note that this repository also works on
+        * the sys_file_reference table when returning FileReference objects.
         *
         * @var string
         */
@@ -95,10 +96,12 @@ class t3lib_file_Repository_FileRepository extends t3lib_file_Repository_Abstrac
        }
 
        /**
-        * Checks the index status of a file and returns FALSE if the file is not indexed, the uid otherwise.
+        * Checks the index status of a file and returns FALSE if the file is not
+        * indexed, the uid otherwise.
+        *
         * @TODO: Check if the indexing functions really belong into the repository and shouldn't be part of an
         * @TODO: indexing service, right now it's fine that way as this function will serve as the public API
-        *
+        * @TODO: throw an exception if nothing found, for consistent handling as in AbstractRepository?
         * @param t3lib_file_File $fileObject
         * @return bool|int
         */
@@ -110,7 +113,7 @@ class t3lib_file_Repository_FileRepository extends t3lib_file_Repository_Abstrac
                        sprintf('storage=%u AND identifier=%s', $mount, $GLOBALS['TYPO3_DB']->fullQuoteStr($identifier, $this->table))
                );
 
-               if (!$row) {
+               if (!is_array($row)) {
                        return FALSE;
                } else {
                        return $row['uid'];
@@ -120,6 +123,7 @@ class t3lib_file_Repository_FileRepository extends t3lib_file_Repository_Abstrac
        /**
         * Returns an index record of a file, or FALSE if the file is not indexed.
         *
+        * @TODO: throw an exception if nothing found, for consistent handling as in AbstractRepository?
         * @param t3lib_file_File $fileObject
         * @return bool|array
         */
@@ -131,7 +135,7 @@ class t3lib_file_Repository_FileRepository extends t3lib_file_Repository_Abstrac
                        sprintf('storage=%u AND identifier=%s', $mount, $GLOBALS['TYPO3_DB']->fullQuoteStr($identifier, $this->table))
                );
 
-               if (!$row) {
+               if (!is_array($row)) {
                        return FALSE;
                } else {
                        return $row;
@@ -161,8 +165,8 @@ class t3lib_file_Repository_FileRepository extends t3lib_file_Repository_Abstrac
        }
 
        /**
-        * Returns all files with the corresponding SHA-1 hash. This is queried against the database, so only indexed files
-        * will be found
+        * Returns all files with the corresponding SHA-1 hash. This is queried
+        * against the database, so only indexed files will be found
         *
         * @param string $hash A SHA1 hash of a file
         * @return array
@@ -177,13 +181,10 @@ class t3lib_file_Repository_FileRepository extends t3lib_file_Repository_Abstrac
 
                $objects = array();
 
-               if ($res) {
-                       while ($row = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res)) {
-                               $objects[] = $this->createDomainObject($row);
-                       }
-
-                       $GLOBALS['TYPO3_DB']->sql_free_result($res);
+               while ($row = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res)) {
+                       $objects[] = $this->createDomainObject($row);
                }
+               $GLOBALS['TYPO3_DB']->sql_free_result($res);
 
                return $objects;
        }
@@ -202,7 +203,7 @@ class t3lib_file_Repository_FileRepository extends t3lib_file_Repository_Abstrac
                $itemList = array();
 
                if (!is_numeric($uid)) {
-                       throw new InvalidArgumentException("uid of related record has to be numeric.", 1316789798);
+                       throw new InvalidArgumentException('Uid of related record has to be numeric.', 1316789798);
                }
 
                $res = $GLOBALS['TYPO3_DB']->exec_SELECTquery(
@@ -217,13 +218,10 @@ class t3lib_file_Repository_FileRepository extends t3lib_file_Repository_Abstrac
                        'sorting_foreign'
                );
 
-               if ($res) {
-                       while ($row = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res)) {
-                               $itemList[] = $this->createFileReferenceObject($row);
-                       }
-
-                       $GLOBALS['TYPO3_DB']->sql_free_result($res);
+               while ($row = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res)) {
+                       $itemList[] = $this->createFileReferenceObject($row);
                }
+               $GLOBALS['TYPO3_DB']->sql_free_result($res);
 
                return $itemList;
        }
@@ -250,7 +248,7 @@ class t3lib_file_Repository_FileRepository extends t3lib_file_Repository_Abstrac
                                ' AND hidden=0'
                );
 
-               if ($row !== NULL) {
+               if (is_array($row)) {
                        $fileReferenceObject = $this->createFileReferenceObject($row);
                }
 
@@ -264,9 +262,8 @@ class t3lib_file_Repository_FileRepository extends t3lib_file_Repository_Abstrac
         * @return void
         */
        public function update($modifiedObject) {
-               // TODO check if $modifiedObject is an instance of t3lib_file_File
-               // TODO check if $modifiedObject is indexed
-
+                       // TODO check if $modifiedObject is an instance of t3lib_file_File
+                       // TODO check if $modifiedObject is indexed
                $changedProperties = $modifiedObject->getUpdatedProperties();
                $properties = $modifiedObject->getProperties();
 
index 21a2adb..2275bda 100644 (file)
 class t3lib_file_Repository_ProcessedFileRepository extends t3lib_file_Repository_AbstractRepository {
 
        /**
-        * The main object type of this class. In some cases (fileReference) this repository can also return
-        * FileReference objects, implementing the common FileInterface.
+        * The main object type of this class. In some cases (fileReference) this
+        * repository can also return FileReference objects, implementing the
+        * common FileInterface.
         *
         * @var string
         */
        protected $objectType = 't3lib_file_ProcessedFile';
 
        /**
-        * Main File object storage table. Note that this repository also works on the sys_file_reference table
-        * when returning FileReference objects.
+        * Main File object storage table. Note that this repository also works on
+        * the sys_file_reference table when returning FileReference objects.
         *
         * @var string
         */
@@ -70,7 +71,6 @@ class t3lib_file_Repository_ProcessedFileRepository extends t3lib_file_Repositor
         * @return boolean
         */
        public function populateDataOfProcessedFileObject(t3lib_file_ProcessedFile $processedFileObject) {
-
                /** @var $GLOBALS['TYPO3_DB'] t3lib_DB */
                $recordData = $GLOBALS['TYPO3_DB']->exec_SELECTgetSingleRow(
                        '*',
@@ -79,7 +79,7 @@ class t3lib_file_Repository_ProcessedFileRepository extends t3lib_file_Repositor
                                . ' AND checksum=' . $GLOBALS['TYPO3_DB']->fullQuoteStr($processedFileObject->calculateChecksum(), $this->table)
                                . ' AND deleted=0');
 
-                       // update the properties if the data was found
+                       // Update the properties if the data was found
                if (is_array($recordData)) {
                        $processedFileObject->updateProperties($recordData);
                        return TRUE;
@@ -98,7 +98,7 @@ class t3lib_file_Repository_ProcessedFileRepository extends t3lib_file_Repositor
                $insertFields = $processedFile->toArray();
                $insertFields['crdate'] = $insertFields['tstamp'] = time();
 
-               // @todo: make sure that the toArray method only contains fields that are in the table
+                       // @todo: make sure that the toArray method only contains fields that are in the table
                $GLOBALS['TYPO3_DB']->exec_INSERTquery($this->table, $insertFields);
        }
 }
index d03b287..7ad2420 100644 (file)
@@ -83,19 +83,19 @@ class t3lib_file_Repository_StorageRepository extends t3lib_file_Repository_Abst
        }
 
        /**
-        * Used to create the initial local storage base e.g. for the fileadmin/ directory.
+        * Create the initial local storage base e.g. for the fileadmin/ directory.
         *
         * @param string $name
         * @param string $basePath
         * @param string $pathType
         * @param string $description
-        * @return mixed
+        * @return integer uid of the inserted record
         */
        public function createLocalStorage($name, $basePath, $pathType, $description = '') {
                $field_values = array(
                        'pid' => 0,
-                       'tstamp' => time(),
-                       'crdate' => time(),
+                       'tstamp' => $GLOBALS['EXEC_TIME'],
+                       'crdate' => $GLOBALS['EXEC_TIME'],
                        'name' => $name,
                        'description' => $description,
                        'driver' => 'Local',
@@ -120,7 +120,7 @@ class t3lib_file_Repository_StorageRepository extends t3lib_file_Repository_Abst
                );
 
                $GLOBALS['TYPO3_DB']->exec_INSERTquery('sys_file_storage', $field_values);
-               return $GLOBALS['TYPO3_DB']->sql_insert_id();
+               return (int)$GLOBALS['TYPO3_DB']->sql_insert_id();
        }
 
        /**
index d5efbe3..0586142 100644 (file)
@@ -59,18 +59,17 @@ class t3lib_file_Service_BackwardsCompatibility_TslibContentAdapterService {
        );
 
        /**
-        * Modifies the DB row in the CONTENT cObj of tslib_content for supplying backwards compatibility
-        * for some file fields which have switched to using the new File API instead of the old uploads/
-        * folder for storing files.
+        * Modifies the DB row in the CONTENT cObj of tslib_content for supplying
+        * backwards compatibility for some file fields which have switched to using
+        * the new File API instead of the old uploads/ folder for storing files.
         *
         * This method is called by the render() method of tslib_content_Content.
         *
         * @param $row
         * @param $table
-        *
         * @return      void
         */
-       public static function modifyDBRow(&$row, $table) {
+       public static function modifyDBRow(array &$row, $table) {
                if (array_key_exists($table, static::$migrateFields)) {
                        foreach (static::$migrateFields[$table] as $migrateFieldName => $oldFieldNames) {
                                if (isset($row[$migrateFieldName])) {
@@ -106,9 +105,10 @@ class t3lib_file_Service_BackwardsCompatibility_TslibContentAdapterService {
                                                        $row[$oldFieldName] = $fieldContents;
                                                }
                                        }
-                                       if (count($files)>0) {
+                                       if (count($files) > 0) {
+
                                        } elseif ($row['image'] > 0) {
-                                               throw new Exception('inconsistent count field in '.$table.'.'.$migrateFieldName);
+                                               throw new Exception('inconsistent count field in "' . $table . '".'.$migrateFieldName);
                                        }
                                }
                        }
index 5e8f40d..bc85165 100644 (file)
@@ -71,7 +71,7 @@ class t3lib_file_Service_FileProcessingService {
                                $this->processImagePreview($processedFile, $file, $configuration);
                                break;
                        default:
-                               throw new RuntimeException('Unknown processing context ' . $context);
+                               throw new RuntimeException('Unknown processing context "' . $context . '"');
                }
                return $processedFile;
        }
@@ -91,8 +91,7 @@ class t3lib_file_Service_FileProcessingService {
         * @return string
         */
        protected function processImagePreview(t3lib_file_ProcessedFile $processedFile, t3lib_file_FileInterface $file, array $configuration) {
-
-                       // merge custom configuration with default configuration
+                       // Merge custom configuration with default configuration
                $configuration = array_merge(
                        array('width' => 64, 'height' => 64),
                        $configuration
@@ -103,8 +102,8 @@ class t3lib_file_Service_FileProcessingService {
 
                $originalFileName = $file->getForLocalProcessing(FALSE);
 
-                       // create a temporary file in typo3temp/
-               if ($file->getExtension() == 'jpg') {
+                       // Create a temporary file in typo3temp/
+               if ($file->getExtension() === 'jpg') {
                        $targetFileExtension = '.jpg';
                } else {
                        $targetFileExtension = '.png';
@@ -113,34 +112,34 @@ class t3lib_file_Service_FileProcessingService {
                $targetFolder = $this->storage->getProcessingFolder();
                $targetFileName = 'preview_' . $processedFile->calculateChecksum() . $targetFileExtension;
 
-                       // do the actual processing
+                       // Do the actual processing
                if (!$targetFolder->hasFile($targetFileName)) {
-                               // create the thumb filename in typo3temp/preview_....jpg
+                               // Create the thumb filename in typo3temp/preview_....jpg
                        $temporaryFileName = t3lib_div::tempnam('preview_') . $targetFileExtension;
 
                                // Check file extension
                        if ($file->getType() != $file::FILETYPE_IMAGE && !t3lib_div::inList($GLOBALS['TYPO3_CONF_VARS']['GFX']['imagefile_ext'], $file->getExtension())) {
-                               // create a default image
+                               // Create a default image
                                $this->getTemporaryImageWithText($temporaryFileName, 'Not imagefile!', 'No ext!', $file->getName());
                        } else {
-                                       // create the temporary file
+                                       // Create the temporary file
                                if ($GLOBALS['TYPO3_CONF_VARS']['GFX']['im']) {
                                        $parameters = '-sample ' . $configuration['width'] . 'x' . $configuration['height'] .  ' ' . $this->wrapFileName($originalFileName) . '[0] ' . $this->wrapFileName($temporaryFileName);
                                        $cmd = t3lib_div::imageMagickCommand('convert', $parameters);
                                        t3lib_utility_Command::exec($cmd);
                                        if (!file_exists($temporaryFileName)) {
-                                                       // create a error gif
+                                                       // Create a error gif
                                                $this->getTemporaryImageWithText($temporaryFileName, 'No thumb','generated!', $file->getName());
                                        }
                                }
 
                        }
 
-                               // everything worked out fine
+                               // Temporary image could have been created
                        if (file_exists($temporaryFileName)) {
                                t3lib_div::fixPermissions($temporaryFileName);
 
-                                       // copy the temporary file to the processedFolder
+                                       // Copy the temporary file to the processedFolder
                                        // this is done here, as the driver can do this without worrying
                                        // about existing ProcessedFile objects
                                        // or permissions in the storage
@@ -150,13 +149,12 @@ class t3lib_file_Service_FileProcessingService {
                                $this->driver->addFile($temporaryFileName, $targetFolder, $targetFileName, $processedFile);
                                $processedFile->setProcessed(TRUE);
 
-                                       // remove the temporary file as it's not needed anymore
+                                       // Remove the temporary file as it's not needed anymore
                                t3lib_div::unlink_tempfile($temporaryFileName);
                        }
                }
        }
 
-
        protected function processFilePreview() {
                // if jpg => image preview
                // if font => font preview
@@ -187,13 +185,13 @@ class t3lib_file_Service_FileProcessingService {
 
        /**
         * Creates error image based on gfx/notfound_thumb.png
-        * Requires GD lib enabled, otherwise it will exit with the three textstrings outputted as text.
-        * Outputs the image stream to browser and exits!
+        * Requires GD lib enabled, otherwise it will exit with the three
+        * textstrings outputted as text. Outputs the image stream to browser and exits!
         *
-        * @param       string          Text line 1
-        * @param       string          Text line 2
-        * @param       string          Text line 3
-        * @return      void
+        * @param string Text line 1
+        * @param string Text line 2
+        * @param string Text line 3
+        * @return void
         */
        protected function getTemporaryImageWithText($filename, $textline1, $textline2, $textline3) {
                if (!$GLOBALS['TYPO3_CONF_VARS']['GFX']['gdlib']) {
@@ -215,8 +213,8 @@ class t3lib_file_Service_FileProcessingService {
                $black = imageColorAllocate($im, 0, 0, 0);
 
                        // Prints the text strings with the build-in font functions of GD
-               $x=0;
-               $font=0;
+               $x = 0;
+               $font = 0;
                if ($textline1) {
                        imagefilledrectangle($im, $x, 9, 56, 16, $white);
                        imageString($im, $font, $x, 9, $textline1, $black);
@@ -234,7 +232,7 @@ class t3lib_file_Service_FileProcessingService {
                if ($GLOBALS['TYPO3_CONF_VARS']['GFX']['gdlib_png']) {
                        imagePng($im, $filename);
                } else {
-                       imageGif ($im, $filename);
+                       imageGif($im, $filename);
                }
        }
 
index c368b57..b32fb39 100644 (file)
@@ -58,7 +58,9 @@ class t3lib_file_Service_ImageProcessingService {
                if ($file instanceof t3lib_file_FileInterface) {
                        $theImage = $file->getForLocalProcessing(FALSE);
                } else {
-                       $file = t3lib_div::resolveBackPath($file); // clean ../ sections of the path and resolve to proper string. This is necessary for the t3lib_file_Service_BackwardsCompatibility_TslibContentAdapterService to work.
+                               // clean ../ sections of the path and resolve to proper string.
+                               // This is necessary for the t3lib_file_Service_BackwardsCompatibility_TslibContentAdapterService to work.
+                       $file = t3lib_div::resolveBackPath($file);
 
                        $theImage = $GLOBALS['TSFE']->tmpl->getFileName($file);
                        if (!$theImage) {
@@ -70,7 +72,9 @@ class t3lib_file_Service_ImageProcessingService {
 
                $maskArray = $fileConfiguration['m.'];
                $maskImages = array();
-               if (is_array($maskArray)) { // Must render mask images and include in hash-calculating - else we cannot be sure the filename is unique for the setup!
+                       // Must render mask images and include in hash-calculating - else we
+                       // cannot be sure the filename is unique for the setup!
+               if (is_array($maskArray)) {
                        $maskImages['m_mask'] = $this->getImgResource($contentObject, $maskArray['mask'], $maskArray['mask.']);
                        $maskImages['m_bgImg'] = $this->getImgResource($contentObject, $maskArray['bgImg'], $maskArray['bgImg.']);
                        $maskImages['m_bottomImg'] = $this->getImgResource($contentObject, $maskArray['bottomImg'], $maskArray['bottomImg.']);
@@ -94,7 +98,7 @@ class t3lib_file_Service_ImageProcessingService {
 
                if ($GLOBALS['TSFE']->config['config']['meaningfulTempFilePrefix']) {
                        $filename = basename($theImage);
-                               // remove extension
+                               // Remove extension
                        $filename = substr($filename, 0, strrpos($filename, '.'));
                        $tempFilePrefixLength = intval($GLOBALS['TSFE']->config['config']['meaningfulTempFilePrefix']);
                        if ($GLOBALS['TYPO3_CONF_VARS']['SYS']['UTF8filesystem']) {
@@ -102,7 +106,7 @@ class t3lib_file_Service_ImageProcessingService {
                                $t3libCsInstance = t3lib_div::makeInstance('t3lib_cs');
                                $filenamePrefix = $t3libCsInstance->substr('utf-8', $filename, 0, $tempFilePrefixLength);
                        } else {
-                                       // strip everything non-ascii
+                                       // Strip everything non-ascii
                                $filename = preg_replace('/[^A-Za-z0-9_-]/', '', trim($filename));
                                $filenamePrefix = substr($filename, 0, $tempFilePrefixLength);
                        }
@@ -142,12 +146,12 @@ class t3lib_file_Service_ImageProcessingService {
                $fileInformation = t3lib_div::split_fileref($theImage);
                $imgExt = (strtolower($fileInformation['fileext']) == $gifCreator->gifExtension ? $gifCreator->gifExtension : 'jpg');
 
-                       // if we have no mask or using ImageMagick is disabled, processing is quite simple
+                       // If no mask  is used or ImageMagick is disabled, processing is quite simple
                if (!is_array($maskArray) || !$GLOBALS['TYPO3_CONF_VARS']['GFX']['im']) {
                        $fileConfiguration['params'] = $this->modifyImageMagickStripProfileParameters($fileConfiguration['params'], $fileConfiguration);
                        $GLOBALS['TSFE']->tmpl->fileCache[$hash] = $gifCreator->imageMagickConvert($theImage, $fileConfiguration['ext'], $fileConfiguration['width'], $fileConfiguration['height'], $fileConfiguration['params'], $fileConfiguration['frame'], $options);
 
-                       if (($fileConfiguration['reduceColors'] || ($imgExt == 'png' && !$gifCreator->png_truecolor)) && is_file($GLOBALS['TSFE']->tmpl->fileCache[$hash][3])) {
+                       if (($fileConfiguration['reduceColors'] || ($imgExt === 'png' && !$gifCreator->png_truecolor)) && is_file($GLOBALS['TSFE']->tmpl->fileCache[$hash][3])) {
                                $reduced = $gifCreator->IMreduceColors($GLOBALS['TSFE']->tmpl->fileCache[$hash][3], t3lib_utility_Math::forceIntegerInRange($fileConfiguration['reduceColors'], 256, $gifCreator->truecolorColors, 256));
                                if (is_file($reduced)) {
                                        unlink($GLOBALS['TSFE']->tmpl->fileCache[$hash][3]);
@@ -156,20 +160,21 @@ class t3lib_file_Service_ImageProcessingService {
                        }
                } else {
                                // Filename:
-                       $dest = $gifCreator->tempPath . $hash . '.' . $imgExt;
-                       if (!file_exists($dest)) { // Generate!
-                               $this->processMask($maskImages, $gifCreator, $theImage, $fileConfiguration, $options, $dest);
+                       $fileDestination = $gifCreator->tempPath . $hash . '.' . $imgExt;
+                                // Generate!
+                       if (!file_exists($fileDestination)) {
+                               $this->processMask($maskImages, $gifCreator, $theImage, $fileConfiguration, $options, $fileDestination);
                        }
 
                                // Finish off
-                       if (($fileConfiguration['reduceColors'] || ($imgExt == 'png' && !$gifCreator->png_truecolor)) && is_file($dest)) {
-                               $reduced = $gifCreator->IMreduceColors($dest, t3lib_utility_Math::forceIntegerInRange($fileConfiguration['reduceColors'], 256, $gifCreator->truecolorColors, 256));
+                       if (($fileConfiguration['reduceColors'] || ($imgExt === 'png' && !$gifCreator->png_truecolor)) && is_file($fileDestination)) {
+                               $reduced = $gifCreator->IMreduceColors($fileDestination, t3lib_utility_Math::forceIntegerInRange($fileConfiguration['reduceColors'], 256, $gifCreator->truecolorColors, 256));
                                if (is_file($reduced)) {
-                                       unlink($dest);
-                                       rename($reduced, $dest);
+                                       unlink($fileDestination);
+                                       rename($reduced, $fileDestination);
                                }
                        }
-                       $GLOBALS['TSFE']->tmpl->fileCache[$hash] = $gifCreator->getImageDimensions($dest);
+                       $GLOBALS['TSFE']->tmpl->fileCache[$hash] = $gifCreator->getImageDimensions($fileDestination);
                }
 
                $GLOBALS['TSFE']->tmpl->fileCache[$hash]['origFile'] = $theImage;
@@ -203,7 +208,8 @@ class t3lib_file_Service_ImageProcessingService {
                        $negate = $GLOBALS['TYPO3_CONF_VARS']['GFX']['im_negate_mask'] ? ' -negate' : '';
 
                        $temp_ext = 'png';
-                       if ($GLOBALS['TYPO3_CONF_VARS']['GFX']['im_mask_temp_ext_gif']) { // If ImageMagick version 5+
+                                // If ImageMagick version 5+
+                       if ($GLOBALS['TYPO3_CONF_VARS']['GFX']['im_mask_temp_ext_gif']) {
                                $temp_ext = $gifCreator->gifExtension;
                        }
 
@@ -213,35 +219,35 @@ class t3lib_file_Service_ImageProcessingService {
                                if ($m_bottomImg) {
                                        $m_bottomImg_mask = $maskImages['m_bottomImg_mask'];
                                }
-                               // Scaling:
+                                       // Scaling:
                                $tempScale = array();
                                $command = '-geometry ' . $tempFileInfo[0] . 'x' . $tempFileInfo[1] . '!';
                                $command = $this->modifyImageMagickStripProfileParameters($command, $fileConfiguration);
                                $tmpStr = $gifCreator->randomName();
 
-                               // m_mask
+                                       // m_mask
                                $tempScale['m_mask'] = $tmpStr . '_mask.' . $temp_ext;
                                $gifCreator->imageMagickExec($m_mask[3], $tempScale['m_mask'], $command . $negate);
-                               // m_bgImg
+                                       // m_bgImg
                                $tempScale['m_bgImg'] = $tmpStr . '_bgImg.' . trim($GLOBALS['TYPO3_CONF_VARS']['GFX']['im_mask_temp_ext_noloss']);
                                $gifCreator->imageMagickExec($m_bgImg[3], $tempScale['m_bgImg'], $command);
 
-                               // m_bottomImg / m_bottomImg_mask
+                                       // m_bottomImg / m_bottomImg_mask
                                if ($m_bottomImg && $m_bottomImg_mask) {
                                        $tempScale['m_bottomImg'] = $tmpStr . '_bottomImg.' . $temp_ext;
                                        $gifCreator->imageMagickExec($m_bottomImg[3], $tempScale['m_bottomImg'], $command);
                                        $tempScale['m_bottomImg_mask'] = $tmpStr . '_bottomImg_mask.' . $temp_ext;
                                        $gifCreator->imageMagickExec($m_bottomImg_mask[3], $tempScale['m_bottomImg_mask'], $command . $negate);
 
-                                       // BEGIN combining:
-                                       // The image onto the background (including the mask here)
+                                               // BEGIN combining:
+                                               // The image onto the background (including the mask here)
                                        $gifCreator->combineExec($tempScale['m_bgImg'], $tempScale['m_bottomImg'], $tempScale['m_bottomImg_mask'], $tempScale['m_bgImg']);
                                }
 
-                               // The image onto the background
+                                       // The image onto the background
                                $gifCreator->combineExec($tempScale['m_bgImg'], $tempFileInfo[3], $tempScale['m_mask'], $dest);
 
-                               // Remove the temporary images...
+                                       // Remove the temporary images
                                foreach ($tempScale as $file) {
                                        if (@is_file($file)) {
                                                unlink($file);
index bb4c724..5aa152a 100644 (file)
@@ -87,18 +87,19 @@ class t3lib_file_Service_IndexerService implements t3lib_Singleton {
         * @return t3lib_file_File|array the indexed $fileObject or an array of indexed properties.
         */
        public function indexFile(t3lib_file_File $fileObject, $updateObject = TRUE) {
-                       // get the file information of this object
+                       // Get the file information of this object
                $fileInfo = $this->gatherFileInformation($fileObject);
 
-                       // signal slot BEFORE the file was indexed
+                       // Signal slot BEFORE the file was indexed
                $this->emitPreFileIndexSignal($fileObject, $fileInfo);
 
-                       // if the file is already indexed, then the file information will be updated on the existing record
+                       // If the file is already indexed, then the file information will
+                       // be updated on the existing record
                if ($fileObject->isIndexed()) {
                        $GLOBALS['TYPO3_DB']->exec_UPDATEquery('sys_file', sprintf('uid = %d', $fileObject->getUid()), $fileInfo);
                } else {
-                               // check if a file has been moved outside of FAL -- we have some orphaned index record in this case
-                               // we could update
+                               // Check if a file has been moved outside of FAL -- we have some
+                               // orphaned index record in this case we could update
                        $otherFiles = $this->getRepository()->findBySha1Hash($fileInfo['sha1']);
                        $movedFile = FALSE;
                        /** @var $otherFile t3lib_file_File */
@@ -110,17 +111,17 @@ class t3lib_file_Service_IndexerService implements t3lib_Singleton {
                                        $this->getRepository()->update($otherFile);
                                        $fileInfo['uid'] = $otherFile->getUid();
                                        $fileObject = $otherFile;
-                                               // skip the rest of the files here as we might have more files that are missing, but we can only
+                                               // Skip the rest of the files here as we might have more files that are missing, but we can only
                                                // have one entry. The optimal solution would be to merge these records then, but this requires
                                                // some more advanced logic that we currently have not implemented.
                                        break;
                                }
                        }
 
-                               // file was not moved, so it is a new index record
+                               // File was not moved, so it is a new index record
                        if ($movedFile === FALSE) {
-                                       // crdate and tstamp should not be present when updating the file object, as they only relate to the
-                                       // index record
+                                       // Crdate and tstamp should not be present when updating
+                                       // the file object, as they only relate to the index record
                                $indexRecord = array_merge($fileInfo,
                                        array(
                                                'crdate' => $GLOBALS['EXEC_TIME'],
@@ -132,13 +133,13 @@ class t3lib_file_Service_IndexerService implements t3lib_Singleton {
                        }
                }
 
-                       // check for an error during the execution and throw an exception
+                       // Check for an error during the execution and throw an exception
                $error = $GLOBALS['TYPO3_DB']->sql_error();
                if ($error) {
-                       throw new RuntimeException('Error during file indexing: ' . $error, 1314455642);
+                       throw new RuntimeException('Error during file indexing: "' . $error . '"', 1314455642);
                }
 
-                       // signal slot AFTER the file was indexed
+                       // Signal slot AFTER the file was indexed
                $this->emitPostFileIndexSignal($fileObject, $fileInfo);
 
                if ($updateObject) {
@@ -172,14 +173,14 @@ class t3lib_file_Service_IndexerService implements t3lib_Singleton {
        public function indexFilesInFolder(t3lib_file_Folder $folder) {
                $numberOfIndexedFiles = 0;
 
-                       // index all files in this folder
+                       // Index all files in this folder
                $fileObjects = $folder->getFiles();
                foreach ($fileObjects as $fileObject) {
                        $this->indexFile($fileObject);
                        $numberOfIndexedFiles++;
                }
 
-                       // call this function recursively for each subfolder
+                       // Call this function recursively for each subfolder
                $subFolders = $folder->getSubfolders();
                foreach ($subFolders as $subFolder) {
                        $numberOfIndexedFiles += $this->indexFilesInFolder($subFolder);
@@ -201,7 +202,8 @@ class t3lib_file_Service_IndexerService implements t3lib_Singleton {
        protected function gatherFileInformation(t3lib_file_File $file) {
                $storage = $file->getStorage();
 
-               // TODO: See if we can't just return info, as it contains most of the stuff we put together in array form again later here.
+               // TODO: See if we can't just return info, as it contains most of the
+               // stuff we put together in array form again later here.
                $info = $storage->getFileInfo($file);
 
                $fileInfo = array(
index c8ffc4e..18e5617 100644 (file)
@@ -47,9 +47,11 @@ class t3lib_file_Service_UserfilemountService {
         * @return string The HTML code for the TCEform field
         */
        public function renderTceformsSelectDropdown(&$PA, &$tceformsObj) {
-               $storageUid = intval($PA['row']['base']); // if working for sys_filemounts table
+                       // If working for sys_filemounts table
+               $storageUid = intval($PA['row']['base']);
                if (!$storageUid) {
-                       $storageUid = intval($PA['row']['storage']); // if working for sys_file_collection table
+                               // If working for sys_file_collection table
+                       $storageUid = intval($PA['row']['storage']);
                }
                if ($storageUid > 0) {
                        /** @var $storageRepository t3lib_file_Repository_StorageRepository */
index ca13c1a..6ca401c 100644 (file)
@@ -130,14 +130,16 @@ class t3lib_file_Storage {
        protected $fileMounts = array();
 
        /**
-        * The file permissions of the user (and their group) merged together and available as an array
+        * The file permissions of the user (and their group) merged together and
+        * available as an array
         *
         * @var array
         */
        protected $userPermissions = array();
 
        /**
-        * The capabilities of this storage as defined in the storage record. Also see the CAPABILITY_* constants below
+        * The capabilities of this storage as defined in the storage record.
+        * Also see the CAPABILITY_* constants below
         *
         * @var integer
         */
@@ -159,7 +161,8 @@ class t3lib_file_Storage {
        const CAPABILITY_PUBLIC = 2;
 
        /**
-        * Capability for writable storages. This only signifies writability in general - this might also be further limited by configuration.
+        * Capability for writable storages. This only signifies writability in
+        * general - this might also be further limited by configuration.
         */
        const CAPABILITY_WRITABLE = 4;
 
@@ -240,7 +243,8 @@ class t3lib_file_Storage {
        }
 
        /**
-        * Returns the base URI of this storage; all files are reachable via URLs beginning with this string.
+        * Returns the base URI of this storage; all files are reachable via URLs
+        * beginning with this string.
         *
         * @return string
         */
@@ -301,7 +305,7 @@ class t3lib_file_Storage {
         * @return integer
         */
        public function getUid() {
-               return $this->storageRecord['uid'];
+               return (int)$this->storageRecord['uid'];
        }
 
        /**
@@ -321,11 +325,11 @@ class t3lib_file_Storage {
        /**
         * Returns the capabilities of this storage.
         *
-        * @return int
+        * @return integer
         * @see CAPABILITY_* constants
         */
        public function getCapabilities() {
-               return $this->capabilities;
+               return (int)$this->capabilities;
        }
 
        /**
@@ -339,9 +343,10 @@ class t3lib_file_Storage {
        }
 
        /**
-        * Returns TRUE if this storage is publicly available. This is just a configuration option and does not mean that it
-        * really *is* public. OTOH a storage that is marked as not publicly available will trigger the file publishing mechanisms
-        * of TYPO3.
+        * Returns TRUE if this storage is publicly available. This is just a
+        * configuration option and does not mean that it really *is* public. OTOH
+        * a storage that is marked as not publicly available will trigger the file
+        * publishing mechanisms of TYPO3.
         *
         * @return boolean
         */
@@ -350,8 +355,8 @@ class t3lib_file_Storage {
        }
 
        /**
-        * Returns TRUE if this storage is writable. This is determined by the driver and the storage configuration; user
-        * permissions are not taken into account.
+        * Returns TRUE if this storage is writable. This is determined by the
+        * driver and the storage configuration; user permissions are not taken into account.
         *
         * @return boolean
         */
@@ -374,7 +379,8 @@ class t3lib_file_Storage {
         ********************************/
 
        /**
-        * Adds a filemount as a "filter" for users to only work on a subset of a storage object
+        * Adds a filemount as a "filter" for users to only work on a subset of a
+        * storage object
         *
         * @param string $folderIdentifier
         * @param array $additionalData
@@ -406,8 +412,8 @@ class t3lib_file_Storage {
        }
 
        /**
-        * Checks if the given subject is within one of the registered user filemounts. If not, working with the file
-        * is not permitted for the user.
+        * Checks if the given subject is within one of the registered user
+        * filemounts. If not, working with the file is not permitted for the user.
         *
         * @param $subject
         * @return boolean
@@ -422,7 +428,7 @@ class t3lib_file_Storage {
                        }
                        $identifier = $subject->getIdentifier();
 
-                               // check if the identifier of the subject is within at
+                               // Check if the identifier of the subject is within at
                                // least one of the file mounts
                        foreach ($this->fileMounts as $fileMount) {
                                if ($this->driver->isWithin($fileMount['folder'], $identifier)) {
@@ -448,12 +454,12 @@ class t3lib_file_Storage {
         * Check if the ACL settings allow for a certain action
         * (is a user allowed to read a file or copy a folder)
         *
-        * @param       string  $action
-        * @param       string  $type   either File or Folder
+        * @param string $action
+        * @param string $type either File or Folder
         * @return      bool
         */
        public function checkUserActionPermission($action, $type) {
-               // TODO decide if we should return TRUE if no permissions are set
+                       // TODO decide if we should return TRUE if no permissions are set
                if (!empty($this->userPermissions)) {
                        $action = strtolower($action);
                        $type = ucfirst(strtolower($type));
@@ -462,30 +468,33 @@ class t3lib_file_Storage {
                        } else {
                                return TRUE;
                        }
-               } else {
-                       return TRUE;
                }
+
+                       // TODO should the default be really TRUE?
+               return TRUE;
        }
 
        /**
-        * Check if a file operation (= action) is allowed on a File/Folder/Storage (= subject).
+        * Check if a file operation (= action) is allowed on a
+        * File/Folder/Storage (= subject).
         *
         * This method, by design, does not throw exceptions or do logging.
-        * Besides the usage from other methods in this class, it is also used by the File List UI to check whether
-        * an action is allowed and whether action related UI elements should thus be shown (move icon, edit icon, etc.)
+        * Besides the usage from other methods in this class, it is also used by
+        * the File List UI to check whether an action is allowed and whether action
+        * related UI elements should thus be shown (move icon, edit icon, etc.)
         *
         * @param string $action, can be read, write, delete
         * @param t3lib_file_FileInterface $file
         * @return boolean
         */
        public function checkFileActionPermission($action, t3lib_file_FileInterface $file) {
-                       // check 1: Does the user have permission to perform the action? e.g. "readFile"
+                       // Check 1: Does the user have permission to perform the action? e.g. "readFile"
                if ($this->checkUserActionPermission($action, 'File') === FALSE) {
                        return FALSE;
                }
 
-                       // check 2: Does the user have the right to perform the action?
-                       // (= is he/she within the file mount borders)
+                       // Check 2: Does the user has the right to perform the action?
+                       // (= is he within the file mount borders)
                if (is_array($this->fileMounts) && count($this->fileMounts) && !$this->isWithinFileMountBoundaries($file)) {
                        return FALSE;
                }
@@ -501,7 +510,7 @@ class t3lib_file_Storage {
                        $isWriteCheck = TRUE;
                }
 
-                       // check 3: Check the capabilities of the storage (and the driver)
+                       // Check 3: Check the capabilities of the storage (and the driver)
                if ($isReadCheck && !$this->isBrowsable()) {
                        return FALSE;
                }
@@ -509,17 +518,13 @@ class t3lib_file_Storage {
                        return FALSE;
                }
 
-                       // check 4: "File permissions" of the driver
+                       // Check 4: "File permissions" of the driver
                $filePermissions = $this->driver->getFilePermissions($file);
                if ($isReadCheck && !$filePermissions['r']) {
                        return FALSE;
-                       # we can't thrown an exception here, as this function is just for asking whether the user has the permission. It's also used by the UI. Therefore, the following exception is commented out.
-                       #throw new t3lib_file_exception_InsufficientFileReadPermissionsException("TYPO3 has no permission to read file " . $file->getIdentifier());
                }
                if ($isWriteCheck && !$filePermissions['w']) {
                        return FALSE;
-                       # see comment above.
-                       #throw new t3lib_file_exception_InsufficientFileWritePermissionsException("TYPO3 has no permission to write to file " . $file->getIdentifier());
                }
 
                return TRUE;
@@ -536,18 +541,17 @@ class t3lib_file_Storage {
         * @return boolean
         */
        public function checkFolderActionPermission($action, t3lib_file_Folder $folder = NULL) {
-                       // check 1: Does the user have permission to perform the action? e.g. "writeFolder"
+                       // Check 1: Does the user have permission to perform the action? e.g. "writeFolder"
                if ($this->checkUserActionPermission($action, 'Folder') === FALSE) {
                        return FALSE;
                }
 
-                       // check 2: Does the user have the right to perform the action?
-                       // (= is he/she within the file mount borders)
+                       // Check 2: Does the user has the right to perform the action?
+                       // (= is he within the file mount borders)
                if (is_array($this->fileMounts) && count($this->fileMounts) && !$this->isWithinFileMountBoundaries($folder)) {
                        return FALSE;
                }
 
-
                $isReadCheck = FALSE;
                if (in_array($action, array('read'))) {
                        $isReadCheck = TRUE;
@@ -558,7 +562,7 @@ class t3lib_file_Storage {
                        $isWriteCheck = TRUE;
                }
 
-                       // check 3: Check the capabilities of the storage (and the driver)
+                       // Check 3: Check the capabilities of the storage (and the driver)
                if ($isReadCheck && !$this->isBrowsable()) {
                        return FALSE;
                }
@@ -566,31 +570,24 @@ class t3lib_file_Storage {
                        return FALSE;
                }
 
-                       // check 4: "Folder permissions" of the driver
+                       // Check 4: "Folder permissions" of the driver
                $folderPermissions = $this->driver->getFolderPermissions($folder);
                if ($isReadCheck && !$folderPermissions['r']) {
                        return FALSE;
-                       # we can't thrown an exception here, as this function is just for asking whether the user has the permission. It's also used by the UI. Therefore, the following exception is commented out.
-                       # throw new t3lib_file_exception_InsufficientFolderReadPermissionsException("TYPO3 has no permission to read from folder " . $folder->getIdentifier());
                }
                if ($isWriteCheck && !$folderPermissions['w']) {
                        return FALSE;
-                       # see comment above
-                       # throw new t3lib_file_exception_InsufficientFolderWritePermissionsException("TYPO3 has no permission to write to folder " . $folder->getIdentifier());
                }
 
                return TRUE;
        }
 
        /**
-        * If the fileName is given, check it against the TYPO3_CONF_VARS[BE][fileDenyPattern] +
-        * and if the file extension is allowed
+        * If the fileName is given, check it against the
+        * TYPO3_CONF_VARS[BE][fileDenyPattern] + and if the file extension is allowed
         *
         * @param string $fileName Full filename
         * @return boolean TRUE if extension/filename is allowed
-        *
-        * if (!$this->checkIfAllowed($fI['fileext'], $theDest, $fI['file'])) {
-        * @formallyknownas t3lib_basicfilefunc::checkIfAllowed(), and is_allowed()
         */
        protected function checkFileExtensionPermission($fileName) {
                $isAllowed = t3lib_div::verifyFilenameAgainstDenyPattern($fileName);
@@ -598,7 +595,7 @@ class t3lib_file_Storage {
                if ($isAllowed) {
                        $fileInfo = t3lib_div::split_fileref($fileName);
 
-                               // set up the permissions for the file extension
+                               // Set up the permissions for the file extension
                        $fileExtensionPermissions = $GLOBALS['TYPO3_CONF_VARS']['BE']['fileExtensions']['webspace'];
                        $fileExtensionPermissions['allow'] = t3lib_div::uniqueList(strtolower($fileExtensionPermissions['allow']));
                        $fileExtensionPermissions['deny'] = t3lib_div::uniqueList(strtolower($fileExtensionPermissions['deny']));
@@ -616,7 +613,7 @@ class t3lib_file_Storage {
                                        // If no match we return TRUE
                                return TRUE;
 
-                               // no file extension
+                               // No file extension
                        } else {
                                if ($fileExtensionPermissions['allow'] === '*') {
                                        return TRUE;
@@ -630,14 +627,10 @@ class t3lib_file_Storage {
                return FALSE;
        }
 
-
-
-
        /********************
         * FILE ACTIONS
         ********************/
 
-
        /**
         * Moves a file from the local filesystem to this storage.
         *
@@ -651,18 +644,20 @@ class t3lib_file_Storage {
                // TODO check permissions (write on target, upload, ...)
 
                if (!file_exists($localFilePath)) {
-                       throw new InvalidArgumentException("File $localFilePath does not exist.", 1319552745);
+                       throw new InvalidArgumentException('File "' . $localFilePath .'" does not exist.', 1319552745);
                }
 
                $targetFolder = $targetFolder ? $targetFolder : $this->getDefaultFolder();
                $fileName = $fileName ? $fileName : basename($localFilePath);
 
-               if ($conflictMode == 'cancel' && $this->driver->fileExistsInFolder($fileName, $targetFolder)) {
-                       throw new t3lib_file_exception_ExistingTargetFileNameException("File $fileName already exists in folder "
+               if ($conflictMode === 'cancel' && $this->driver->fileExistsInFolder($fileName, $targetFolder)) {
+                       throw new t3lib_file_exception_ExistingTargetFileNameException('File "' . $fileName . '" already exists in folder '
                                . $targetFolder->getIdentifier(), 1322121068);
-               } elseif ($conflictMode == 'changeName') {
+               } elseif ($conflictMode === 'changeName') {
                        $fileName = $this->getUniqueName($targetFolder, $fileName);
-               } // we do not care whether the file exists if $conflictMode is "replace", so just use the name as is in that case
+               }
+               // We do not care whether the file exists if $conflictMode is "replace",
+               // so just use the name as is in that case
 
                return $this->driver->addFile($localFilePath, $targetFolder, $fileName);
        }
@@ -681,11 +676,11 @@ class t3lib_file_Storage {
        /**
         * Returns a publicly accessible URL for a file.
         *
-        * WARNING: Access to the file may be restricted by further means, e.g. some web-based authentication. You have to take care of this
-        * yourself.
+        * WARNING: Access to the file may be restricted by further means, e.g.
+        * some web-based authentication. You have to take care of this yourself.
         *
         * @param t3lib_file_FileInterface $fileObject The file object
-        * @param bool  $relativeToCurrentScript   Determines whether the URL returned should be relative to the current script, in case it is relative at all (only for the LocalDriver)
+        * @param bool $relativeToCurrentScript Determines whether the URL returned should be relative to the current script, in case it is relative at all (only for the LocalDriver)
         * @return string
         */
        public function getPublicUrlForFile(t3lib_file_FileInterface $fileObject, $relativeToCurrentScript = FALSE) {
@@ -710,7 +705,7 @@ class t3lib_file_Storage {
                        // Pre-process the file by an accordant slot
                $this->emitPreFileProcess($processedFile, $fileObject, $context, $configuration);
 
-                       // only do something if the file is not processed yet
+                       // Only handle the file is not processed yet
                        // (maybe modified or already processed by a signal)
                        // or (in case of preview images) already in the DB/in the processing folder
                if (!$processedFile->isProcessed()) {
@@ -829,14 +824,14 @@ class t3lib_file_Storage {
        /**
         * Get contents of a file object
         *
-        * @param       t3lib_file_FileInterface        $file
-        * @return      string
+        * @param t3lib_file_FileInterface $file
+        * @return string
         */
        public function getFileContents($file) {
-                       // check if $file is readable
+                       // Check if $file is readable
                if (!$this->checkFileActionPermission('read', $file)) {
-                       throw new t3lib_file_exception_InsufficientFileReadPermissionsException('Reading file '
-                               . $file->getIdentifier() . ' is not allowed.', 1330121089);
+                       throw new t3lib_file_exception_InsufficientFileReadPermissionsException('Reading file "'
+                               . $file->getIdentifier() . '" is not allowed.', 1330121089);
                }
 
                return $this->driver->getFileContents($file);
@@ -851,19 +846,19 @@ class t3lib_file_Storage {
         */
        public function setFileContents(t3lib_file_AbstractFile $file, $contents) {
                        // TODO does setting file contents require update permission?
-                       // check if user is allowed to update
+                       // Check if user is allowed to update
                if (!$this->checkUserActionPermission('update', 'File')) {
-                       throw new t3lib_file_exception_InsufficientUserPermissionsException('Updating file '
-                               . $file->getIdentifier() . ' not allowed for user.', 1330121117);
+                       throw new t3lib_file_exception_InsufficientUserPermissionsException('Updating file "'
+                               . $file->getIdentifier() . '" not allowed for user.', 1330121117);
                }
 
-                       // check if $file is writable
+                       // Check if $file is writable
                if (!$this->checkFileActionPermission('write', $file)) {
-                       throw new t3lib_file_exception_InsufficientFileWritePermissionsException('Writing to file '
-                               . $file->getIdentifier() . ' is not allowed.', 1330121088);
+                       throw new t3lib_file_exception_InsufficientFileWritePermissionsException('Writing to file "'
+                               . $file->getIdentifier() . '" is not allowed.', 1330121088);
                }
 
-                       // call driver method to update the file and update file properties afterwards
+                       // Call driver method to update the file and update file properties afterwards
                try {
                        $result = $this->driver->setFileContents($file, $contents);
 
@@ -911,7 +906,7 @@ class t3lib_file_Storage {
                        throw new t3lib_file_exception_FileOperationErrorException('Deleting the file "' . $fileObject->getIdentifier() . "' failed.", 1329831691);
                }
 
-                       // mark the file object as deleted
+                       // Mark the file object as deleted
                $fileObject->setDeleted();
 
                return TRUE;
@@ -937,18 +932,18 @@ class t3lib_file_Storage {
                        $targetFileName = $file->getName();
                }
 
-                       // file exists and we should abort, let's abort
+                       // File exists and we should abort, let's abort
                if ($conflictMode === 'cancel' && $targetFolder->hasFile($targetFileName)) {
                        throw new t3lib_file_exception_ExistingTargetFileNameException('The target file already exists.', 1320291063);
                }
 
-                       // file exists and we should find another name, let's find another one
+                       // File exists and we should find another name, let's find another one
                if ($conflictMode === 'renameNewFile' && $targetFolder->hasFile($targetFileName)) {
                        $targetFileName = $this->getUniqueName($targetFolder, $targetFileName);
                }
 
                $sourceStorage = $file->getStorage();
-                       // call driver method to create a new file from an existing file object,
+                       // Call driver method to create a new file from an existing file object,
                        // and return the new file object
                try {
                        if ($sourceStorage == $this) {
@@ -978,7 +973,6 @@ class t3lib_file_Storage {
         * @return void
         */
        protected function checkFileUploadPermissions($localFilePath, $targetFolder, $targetFileName, $uploadedFileSize) {
-
                        // Makes sure the user is allowed to upload
                if (!$this->checkUserActionPermission('upload', 'File')) {
                        throw new t3lib_file_exception_InsufficientUserPermissionsException('You are not allowed to upload files to this storage "' . $this->getUid() . '"', 1322112430);
@@ -989,18 +983,18 @@ class t3lib_file_Storage {
                        throw new t3lib_file_exception_UploadException("The upload has failed, no uploaded file found!", 1322110455);
                }
 
-                       // max upload size (kb) for files. Remember that PHP has an inner limit often set to 2 MB
+                       // Max upload size (kb) for files.
                $maxUploadFileSize = t3lib_div::getMaxUploadFileSize() * 1024;
                if ($uploadedFileSize >= $maxUploadFileSize) {
                        throw new t3lib_file_exception_UploadSizeException("The uploaded file exceeds the size-limit of $maxUploadFileSize bytes", 1322110041);
                }
 
-                       // check if targetFolder is writable
+                       // Check if targetFolder is writable
                if (!$this->checkFolderActionPermission('write', $targetFolder)) {
                        throw new t3lib_file_exception_InsufficientFolderWritePermissionsException('You are not allowed to write to the target folder "' . $targetFolder->getIdentifier() . '"', 1322120356);
                }
 
-                       // check for a valid file extension
+                       // Check for a valid file extension
                if (!$this->checkFileExtensionPermission($targetFileName)) {
                        throw new t3lib_file_exception_IllegalFileExtensionException("Extension of file name is not allowed in \"$targetFileName\"!", 1322120271);
                }
@@ -1016,27 +1010,27 @@ class t3lib_file_Storage {
         * @return void
         */
        protected function checkFileCopyPermissions(t3lib_file_FileInterface $file, t3lib_file_Folder $targetFolder, $targetFileName) {
-                       // check if targetFolder is within this storage, this should never happen
+                       // Check if targetFolder is within this storage, this should never happen
                if ($this->getUid() != $targetFolder->getStorage()->getUid()) {
                        throw new t3lib_file_exception_AbstractFileException('The operation of the folder cannot be called by this storage "' . $this->getUid() . '"', 1319550405);
                }
 
-                       // check if user is allowed to copy
+                       // Check if user is allowed to copy
                if (!$this->checkUserActionPermission('copy', 'File')) {
                        throw new t3lib_file_exception_InsufficientUserPermissionsException('You are not allowed to copy files to this storage "' . $this->getUid() . '"', 1319550415);
                }
 
-                       // check if $file is readable
+                       // Check if $file is readable
                if (!$this->checkFileActionPermission('read', $file)) {
                        throw new t3lib_file_exception_InsufficientFileReadPermissionsException('You are not allowed to read the file "' . $file->getIdentifier() . "'", 1319550425);
                }
 
-                       // check if targetFolder is writable
+                       // Check if targetFolder is writable
                if (!$this->checkFolderActionPermission('write', $targetFolder)) {
                        throw new t3lib_file_exception_InsufficientFolderWritePermissionsException('You are not allowed to write to the target folder "' . $targetFolder->getIdentifier() . '"', 1319550435);
                }
 
-                       // check for a valid file extension
+                       // Check for a valid file extension
                if (!$this->checkFileExtensionPermission($targetFileName)) {
                        throw new t3lib_file_exception_IllegalFileExtensionException('You are not allowed to copy a file of that type.', 1319553317);
                }
@@ -1047,10 +1041,10 @@ class t3lib_file_Storage {
         * the target folder has to be part of this storage
         *
         * previously in t3lib_extFileFunc::func_move()
-        * @param       t3lib_file_FileInterface        $file
-        * @param       t3lib_file_Folder $targetFolder
-        * @param       string  $conflictMode   "overrideExistingFile", "renameNewFile", "cancel"
-        * @param       string  $targetFileName an optional destination fileName
+        * @param t3lib_file_FileInterface $file
+        * @param t3lib_file_Folder $targetFolder
+        * @param string $conflictMode "overrideExistingFile", "renameNewFile", "cancel"
+        * @param string $targetFileName an optional destination fileName
         * @return t3lib_file_FileInterface
         */
        public function moveFile($file, $targetFolder, $targetFileName = NULL, $conflictMode = 'renameNewFile') {
@@ -1061,22 +1055,23 @@ class t3lib_file_Storage {
                }
 
                if ($targetFolder->hasFile($targetFileName)) {
-                               // file exists and we should abort, let's abort
+                               // File exists and we should abort, let's abort
                        if ($conflictMode === 'renameNewFile') {
                                $targetFileName = $this->getUniqueName($targetFolder, $targetFileName);
 
-                               // cancel if requested so
-                       } elseif ($conflictMode == 'cancel') {
+                               // Cancel if requested so
+                       } elseif ($conflictMode === 'cancel') {
                                throw new t3lib_file_exception_ExistingTargetFileNameException('The target file already exists', 1329850997);
-                       } // when $conflictMode is "overrideExistingFile", just ignore the naming conflict
+                       }
+                               // When $conflictMode is "overrideExistingFile", just ignore the naming conflict
                        // TODO check what to do with an existing index record for the target file then
                }
 
                $this->emitPreFileMoveSignal($file, $targetFolder);
 
                $sourceStorage = $file->getStorage();
-                       // call driver method to move the file
-                       // that also updates the file object properties
+                       // Call driver method to move the file that also updates the file
+                       // object properties
                try {
                        if ($sourceStorage == $this) {
                                $newIdentifier = $this->driver->moveFileWithinStorage($file, $targetFolder, $targetFileName);
@@ -1091,6 +1086,7 @@ class t3lib_file_Storage {
                        }
                } catch (t3lib_exception $e) {
                        echo $e->getMessage();
+                       // TODO echo should be changed to something useful
                        // TODO rollback things that have happened
                        // TODO emit FileMoveFailedSignal?
                }
@@ -1101,7 +1097,8 @@ class t3lib_file_Storage {
        }
 
        /**
-        * Updates the properties of a file object with some that are freshly fetched from the driver.
+        * Updates the properties of a file object with some that are freshly
+        * fetched from the driver.
         *
         * @param t3lib_file_AbstractFile $file
         * @param string $identifier The identifier of the file. If set, this will overwrite the file object's identifier (use e.g. after moving a file)
@@ -1109,7 +1106,7 @@ class t3lib_file_Storage {
         * @return void
         */
        protected function updateFile(t3lib_file_AbstractFile $file, $identifier = '', $storage = NULL) {
-               if ($identifier == '') {
+               if ($identifier === '') {
                        $identifier = $file->getIdentifier();
                }
                $fileInfo = $this->driver->getFileInfoByIdentifier($identifier);
@@ -1137,33 +1134,37 @@ class t3lib_file_Storage {
        /**
         * Checks for permissions to move a file.
         *
-        * @throws RuntimeException|t3lib_file_exception_InsufficientFileReadPermissionsException|t3lib_file_exception_InsufficientFileWritePermissionsException|t3lib_file_exception_InsufficientFolderAccessPermissionsException|t3lib_file_exception_InsufficientUserPermissionsException
+        * @throws RuntimeException
+        * @throws t3lib_file_exception_InsufficientFileReadPermissionsException
+        * @throws t3lib_file_exception_InsufficientFileWritePermissionsException
+        * @throws t3lib_file_exception_InsufficientFolderAccessPermissionsException
+        * @throws t3lib_file_exception_InsufficientUserPermissionsException
         * @param t3lib_file_FileInterface $file
         * @param t3lib_file_Folder $targetFolder
         * @return void
         */
        protected function checkFileMovePermissions(t3lib_file_FileInterface $file, t3lib_file_Folder $targetFolder) {
-                       // check if targetFolder is within this storage
+                       // Check if targetFolder is within this storage
                if ($this->getUid() != $targetFolder->getStorage()->getUid()) {
                        throw new RuntimeException();
                }
 
-                       // check if user is allowed to move
+                       // Check if user is allowed to move
                if (!$this->checkUserActionPermission('move', 'File')) {
                        throw new t3lib_file_exception_InsufficientUserPermissionsException('You are not allowed to move files to storage "' . $this->getUid() . '"', 1319219349);
                }
 
-                       // check if $file is readable
+                       // Check if $file is readable
                if (!$this->checkFileActionPermission('read', $file)) {
                        throw new t3lib_file_exception_InsufficientFileReadPermissionsException('You are not allowed to read the file "' . $file->getIdentifier() . "'", 1319219349);
                }
 
-                       // check if $file is writable
+                       // Check if $file is writable
                if (!$this->checkFileActionPermission('write', $file)) {
                        throw new t3lib_file_exception_InsufficientFileWritePermissionsException('You are not allowed to move the file "' . $file->getIdentifier() . "'", 1319219349);
                }
 
-                       // check if targetFolder is writable
+                       // Check if targetFolder is writable
                if (!$this->checkFolderActionPermission('write', $targetFolder)) {
                        throw new t3lib_file_exception_InsufficientFolderAccessPermissionsException('You are not allowed to write to the target folder "' . $targetFolder->getIdentifier() . '"', 1319219349);
                }
@@ -1184,23 +1185,23 @@ class t3lib_file_Storage {
                        return $file;
                }
 
-                       // check if user is allowed to rename
+                       // Check if user is allowed to rename
                if (!$this->checkUserActionPermission('rename', 'File')) {
                        throw new t3lib_file_exception_InsufficientUserPermissionsException('You are not allowed to rename files."', 1319219349);
                }
 
-                       // check if $file is readable
+                       // Check if $file is readable
                if (!$this->checkFileActionPermission('read', $file)) {
                        throw new t3lib_file_exception_InsufficientFileReadPermissionsException('You are not allowed to read the file "' . $file->getIdentifier() . "'", 1319219349);
                }
 
-                       // check if $file is writable
+                       // Check if $file is writable
                if (!$this->checkFileActionPermission('write', $file)) {
                        throw new t3lib_file_exception_InsufficientFileWritePermissionsException('You are not allowed to rename the file "' . $file->getIdentifier() . "'", 1319219349);
                }
 
-                       // call driver method to rename the file
-                       // that also updates the file object properties
+                       // Call driver method to rename the file that also updates the file
+                       // object properties
                try {
                        $newIdentifier = $this->driver->renameFile($file, $targetFileName);
 
@@ -1225,7 +1226,7 @@ class t3lib_file_Storage {
         */
        public function replaceFile(t3lib_file_FileInterface $file, $localFilePath) {
                if (!file_exists($localFilePath)) {
-                       throw new InvalidArgumentException("File '$localFilePath' does not exist.", 1325842622);
+                       throw new InvalidArgumentException('File "' . $localFilePath . '" does not exist.', 1325842622);
                }
 
                // TODO check permissions
@@ -1249,7 +1250,6 @@ class t3lib_file_Storage {
         * @return t3lib_file_FileInterface The file object
         */
        public function addUploadedFile(array $uploadedFileData, t3lib_file_Folder $targetFolder = NULL, $targetFileName = NULL, $conflictMode = 'cancel') {
-
                $localFilePath = $uploadedFileData['tmp_name'];
                if ($targetFolder === NULL) {
                        $targetFolder = $this->getDefaultFolder();
@@ -1259,8 +1259,7 @@ class t3lib_file_Storage {
                        $targetFileName = $uploadedFileData['name'];
                }
 
-                       // handling $conflictMode is delegated to addFile()
-
+                       // Handling $conflictMode is delegated to addFile()
                $this->checkFileUploadPermissions($localFilePath, $targetFolder, $targetFileName, $uploadedFileData['size']);
 
                $resultObject = $this->addFile($localFilePath, $targetFolder, $targetFileName, $conflictMode);
@@ -1296,8 +1295,8 @@ class t3lib_file_Storage {
        }
 
        /**
-        * Moves a folder. If you want to move a folder from this storage to another one, call this method on the target storage,
-        * otherwise you will get an exception.
+        * Moves a folder. If you want to move a folder from this storage to another
+        * one, call this method on the target storage, otherwise you will get an exception.
         *
         * @param t3lib_file_Folder $folderToMove The folder to move.
         * @param t3lib_file_Folder $targetParentFolder The target parent folder
@@ -1319,7 +1318,7 @@ class t3lib_file_Storage {
 
                $this->emitPreFolderMoveSignal($folderToMove, $targetParentFolder, $newFolderName);
 
-                       // get all file objects now so we are able to update them after moving the folder
+                       // Get all file objects now so we are able to update them after moving the folder
                $fileObjects = $this->getAllFileObjectsInFolder($folderToMove);
                try {
                        if ($sourceStorage == $this) {
@@ -1329,7 +1328,7 @@ class t3lib_file_Storage {
                                $fileMappings = $this->moveFolderBetweenStorages($folderToMove, $targetParentFolder, $newFolderName);
                        }
 
-                               // update the identifier and storage of all file objects
+                               // Update the identifier and storage of all file objects
                        foreach ($fileObjects as $oldIdentifier => $fileObject) {
                                $newIdentifier = $fileMappings[$oldIdentifier];
                                $fileObject->updateProperties(array('storage' => $this, 'identifier' => $newIdentifier));
@@ -1408,16 +1407,16 @@ class t3lib_file_Storage {
                 *   - get a local copy
                 *   - put it into the other storage
                 */
-               
+
        }
 
        /**
         * Previously in t3lib_extFileFunc::folder_move()
         *
+        * @throws RuntimeException if an error occurs during renaming
         * @param t3lib_file_Folder $folderObject
         * @param string $newName
         * @return bool TRUE if the operation succeeded
-        * @throws RuntimeException if an error occurs during renaming
         */
        public function renameFolder($folderObject, $newName) {
                // TODO unit tests
@@ -1433,7 +1432,7 @@ class t3lib_file_Storage {
                try {
                        $fileMappings = $this->driver->renameFolder($folderObject, $newName);
 
-                       // update the identifier of all file objects
+                               // Update the identifier of all file objects
                        foreach ($fileObjects as $oldIdentifier => $fileObject) {
                                $newIdentifier = $fileMappings[$oldIdentifier];
                                $fileObject->updateProperties(array('identifier' => $newIdentifier));
@@ -1459,10 +1458,9 @@ class t3lib_file_Storage {
                }
 
                if ($this->driver->isFolderEmpty($folderObject) && !$deleteRecursively) {
-                       throw new RuntimeException("Could not delete folder " . $folderObject->getIdentifier() . " because it is not empty.", 1325952534);
+                       throw new RuntimeException('Could not delete folder "' . $folderObject->getIdentifier() . '" because it is not empty.', 1325952534);
                }
 
-
                $this->emitPreFolderDeleteSignal($folderObject);
 
                $this->driver->deleteFolder($folderObject, $deleteRecursively);
@@ -1482,7 +1480,8 @@ class t3lib_file_Storage {
         */
        public function getFolderList($path, $pattern = '', $start = 0, $numberOfItems = 0, $excludeHiddenFolders = TRUE) {
                $items = $this->driver->getFolderList($path, $pattern, $start, $numberOfItems, $excludeHiddenFolders);
-                       // exclude the _processed_ folder, so it won't get indexed etc
+
+                       // Exclude the _processed_ folder, so it won't get indexed etc
                $processingFolder = $this->getProcessingFolder();
                if ($processingFolder && $path == '/') {
                        $processedFolderIdentifier = $this->processingFolder->getIdentifier();
@@ -1921,32 +1920,44 @@ class t3lib_file_Storage {
        protected function getUniqueName(t3lib_file_Folder $folder, $theFile, $dontCheckForUnique = FALSE) {
                static $maxNumber = 99, $uniqueNamePrefix = '';
 
-               $origFileInfo = t3lib_div::split_fileref($theFile); // Fetches info about path, name, extention of $theFile
-               if ($uniqueNamePrefix) { // Adds prefix
+                       // Fetches info about path, name, extention of $theFile
+               $origFileInfo = t3lib_div::split_fileref($theFile);
+                       // Adds prefix
+               if ($uniqueNamePrefix) {
                        $origFileInfo['file'] = $uniqueNamePrefix . $origFileInfo['file'];
                        $origFileInfo['filebody'] = $uniqueNamePrefix . $origFileInfo['filebody'];
                }
 
                        // Check if the file exists and if not - return the fileName...
                $fileInfo = $origFileInfo;
-               $theDestFile = $fileInfo['file']; // The destinations file
-               if (!$this->driver->fileExistsInFolder($theDestFile, $folder) || $dontCheckForUnique) { // If the file does NOT exist we return this fileName
+                       // The destinations file
+               $theDestFile = $fileInfo['file'];
+                       // If the file does NOT exist we return this fileName
+               if (!$this->driver->fileExistsInFolder($theDestFile, $folder) || $dontCheckForUnique) {
                        return $theDestFile;
                }
 
-                       // Well the fileName in its pure form existed. Now we try to append numbers / unique-strings and see if we can find an available fileName...
-               $theTempFileBody = preg_replace('/_[0-9][0-9]$/', '', $origFileInfo['filebody']); // This removes _xx if appended to the file
+                       // Well the fileName in its pure form existed. Now we try to append
+                       // numbers / unique-strings and see if we can find an available fileName
+
+                       // This removes _xx if appended to the file
+               $theTempFileBody = preg_replace('/_[0-9][0-9]$/', '', $origFileInfo['filebody']);
                $theOrigExt = $origFileInfo['realFileext'] ? '.' . $origFileInfo['realFileext'] : '';
 
                for ($a = 1; $a <= ($maxNumber + 1); $a++) {
-                       if ($a <= $maxNumber) { // First we try to append numbers
+                               // First we try to append numbers
+                       if ($a <= $maxNumber) {
                                $insert = '_' . sprintf('%02d', $a);
-                       } else { // .. then we try unique-strings...
-                               $insert = '_' . substr(md5(uniqId('')), 0, 6); // TODO remove constant 6
+                               // .. then we try unique-strings...
+                       } else {
+                                       // TODO remove constant 6
+                               $insert = '_' . substr(md5(uniqId('')), 0, 6);
                        }
                        $theTestFile = $theTempFileBody . $insert . $theOrigExt;
-                       $theDestFile = $theTestFile; // The destinations file
-                       if (!$this->driver->fileExistsInFolder($theDestFile, $folder)) { // If the file does NOT exist we return this fileName
+                               // The destinations file
+                       $theDestFile = $theTestFile;
+                               // If the file does NOT exist we return this fileName
+                       if (!$this->driver->fileExistsInFolder($theDestFile, $folder)) {
                                return $theDestFile;
                        }
                }
@@ -2021,4 +2032,4 @@ if (defined('TYPO3_MODE') && isset($GLOBALS['TYPO3_CONF_VARS'][TYPO3_MODE]['XCLA
        include_once($GLOBALS['TYPO3_CONF_VARS'][TYPO3_MODE]['XCLASS']['t3lib/file/Storage.php']);
 }
 
-?>
+?>
\ No newline at end of file