CInbox (Common-Inbox)  0.1
Common functionality for ingesting files for archiving.
Public Member Functions | Public Attributes | Static Public Attributes | Protected Member Functions | Protected Attributes | Private Attributes | List of all members
TaskCleanFilenames Class Reference
Inheritance diagram for TaskCleanFilenames:
TaskFilesMatch CITask

Public Member Functions

 __construct (&$CIFolder)
 
 init ()
 
 run ()
 
 setMapping ($mapping)
 
 cleanFilename ($filename)
 
- Public Member Functions inherited from TaskFilesMatch
 init ()
 
- Public Member Functions inherited from CITask
 __construct (&$CIFolder, $label)
 
 getName ()
 
 setLabel ($label)
 
 getLabel ()
 
 setDescription ($description)
 
 getDescription ()
 
 skip ()
 
 skipIt ()
 
 setItemSubDirs ($itemSubDirs)
 
 getStatus ()
 
 statusUndefined ()
 
 statusRunning ()
 
 statusWait ()
 
 statusDone ()
 
 statusPBCT ()
 
 statusPBC ()
 
 statusSkipped ()
 
 statusError ()
 
 statusConfigError ()
 
 init ()
 
 run ()
 
 finalize ()
 

Public Attributes

const TASK_LABEL = 'Clean filenames'
 
const CONF_CLEAN_SOURCE = 'CLEAN_SOURCE'
 
- Public Attributes inherited from TaskFilesMatch
const TASK_LABEL = 'Matching filenames (abstract)'
 
- Public Attributes inherited from CITask
const STATUS_UNDEFINED = 0
 Undefined. Default unless task changes it.
 
const STATUS_RUNNING = 1
 Undefined, but indicates that the task is in progress.
 
const STATUS_WAIT = 2
 Task decided that Item is not ready yet and shall be moved back to 'to-do'.
 
const STATUS_DONE = 5
 Success! This means the task completed successfully.
 
const STATUS_PBCT = 6
 There were problems, but the task may continue.
 
const STATUS_PBC = 7
 There were problems, but subsequent task may continue.
 
const STATUS_ERROR = 10
 An error occurred. Abort execution as soon as possible.
 
const STATUS_CONFIG_ERROR = 11
 If a config option was not valid.
 
const STATUS_SKIPPED = 15
 If task was skipped.
 
const ONCE_PER_ITEM = false
 True: Run this task only once per item.
 
const IS_RECURSIVE = false
 Default (false): one task = one folder. True: The task performs actions on subfolders too.
 
const CONF_COPY_EXCLUDE = 'COPY_EXCLUDE'
 Patterns which files to exclude from copying.
 
const MASK_TARGET_TEMP = 'temp_%s'
 

Static Public Attributes

static $CHARS_UMLAUTS
 
static $CHARS_ILLEGAL
 
static $CHARS_WHITESPACE
 
static $CHARS_SLASHES
 
static $CHARS_BRACKETS
 
static $CHARS_QUOTATION
 
static $CHARS_QUOTATION2
 
static $CHARS_PICKY
 

Protected Member Functions

 loadSettings ()
 
 renameFile ($fileIn, $fileOut)
 
- Protected Member Functions inherited from TaskFilesMatch
 getMatchingFiles ($CIFolder, $patterns)
 
 getNonMatchingFiles ($CIFolder, $patterns)
 
 hasMissingFiles ($CIFolder, $patterns)
 
- Protected Member Functions inherited from CITask
 setName ($name)
 
 exclude ($file, $excludePatterns)
 
 optionIsArray ($option, $optionName)
 
 resolveTargetFolderTemp ($CIFolder=null)
 
 setStatus ($status)
 
 setStatusUndefined ()
 
 setStatusRunning ()
 
 setStatusWait ()
 
 setStatusDone ()
 
 setStatusPBCT ()
 
 setStatusPBC ()
 
 setStatusSkipped ()
 
 setStatusError ()
 
 setStatusConfigError ()
 
 checkTempFolder ()
 
 getTempFolder ()
 
 setTempFolder ($tempFolder=null)
 
 loadSettings ()
 

Protected Attributes

 $cleanSource
 
- Protected Attributes inherited from CITask
 $logger
 Logging handler.
 
 $name
 Class name of this task.
 
 $label
 Human readable Task label.
 
 $description
 Human readable description of Task's purpose/actions.
 
 $CIFolder
 CIFolder object that provides all information needed for this task.
 
 $sourceFolder
 Source folder of this task.
 
 $targetFolder
 Target folder of this task (read from config).
 
 $targetFolderTemp
 Temporary name of Target folder of this task. Used until inbox processing completed successfully.
 
 $itemSubDirs
 Array of Item subfolders: key=foldername, value=CIFolder (initialized with its config).
 
 $tempFolder
 Path of the temp folder for this task.
 
 $copyExclude
 Contains the value of CONF_COPY_EXCLUDE.
 
 $skip = false
 True: Skip execution. Default=false (=normal execution).
 
 $status
 Status of this task (=for current item subfolder).
 

Private Attributes

 $charMappings
 
 $charMapping
 

Additional Inherited Members

- Static Public Member Functions inherited from CITask
static isRecursive ()
 
static oncePerItem ()
 
static getTaskByName ($taskName, $CIFolder)
 
static getTaskClassName ($taskName)
 
- Static Protected Attributes inherited from CITask
static $statusGlobal
 Status of the sum of tasks of this type. // TODO! Implement and use this.
 

Detailed Description

Cleans files/foldernames of the folder, applying certain replacement rules for 'non-safe' characters.

Author
Peter Bubestinger-Steindl (pb@av.nosp@m.-rd..nosp@m.com)
See also

Member Function Documentation

TaskCleanFilenames::cleanFilename (   $filename)

Replaces possibly dangerous/problematic characters in $filename string. To be used for file- or foldernames.

TaskCleanFilenames::init ( )

Prepare everything so it's ready for processing.

Returns
bool success True if init went fine, False if an error occurred.
TaskCleanFilenames::loadSettings ( )
protected

Load settings from config that are relevant for this task.

TaskCleanFilenames::renameFile (   $fileIn,
  $fileOut 
)
protected

Rename a file from $fileIn to $fileOut.

TaskCleanFilenames::run ( )

Perform the actual steps of this task.

TaskCleanFilenames::setMapping (   $mapping)

Define custom mapping of characters for cleanFilename().

Member Data Documentation

TaskCleanFilenames::$CHARS_BRACKETS
static
Initial value:
= array(
"(" => "_",
")" => "_",
"[" => "_",
"]" => "_",
"{" => "_",
"}" => "_",
"<" => "_",
">" => "_",
)
TaskCleanFilenames::$CHARS_ILLEGAL
static
Initial value:
= array(
"?" => "_",
"*" => "_",
":" => "_",
)
TaskCleanFilenames::$CHARS_PICKY
static
Initial value:
= array(
"#" => "_",
"," => "_",
";" => "_",
"&" => "and",
)
TaskCleanFilenames::$CHARS_QUOTATION
static
Initial value:
= array(
"„" => "\"",
"“" => "\"",
"´" => "'",
"`" => "'",
)
TaskCleanFilenames::$CHARS_QUOTATION2
static
Initial value:
= array(
"„" => "_",
"“" => "_",
"´" => "_",
"`" => "_",
'"' => "_",
"'" => "_",
)
TaskCleanFilenames::$CHARS_SLASHES
static
Initial value:
= array(
"\\" => "_",
"/" => "_",
)
TaskCleanFilenames::$CHARS_UMLAUTS
static
Initial value:
= array(
"ä" => "ae",
"ü" => "ue",
"ö" => "oe",
"ß" => "ss",
"Ä" => "AE",
"Ü" => "UE",
"Ö" => "OE",
)
TaskCleanFilenames::$CHARS_WHITESPACE
static
Initial value:
= array(
" " => "_",
)

The documentation for this class was generated from the following file: