CWIS Developer Documentation
Public Member Functions | List of all members
FolderFactory Class Reference

Factory object for Folder class, used to retrieve and manage Folders and groups of Folders. More...

Inheritance diagram for FolderFactory:
Inheritance graph
[legend]
Collaboration diagram for FolderFactory:
Collaboration graph
[legend]

Public Member Functions

 __construct ($OwnerId=NULL)
 Constructor for FolderFactory. More...
 
 CreateFolder ($ItemType, $FolderName=NULL, $OwnerId=NULL)
 Create new folder that will contain only one type of item. More...
 
 CreateMixedFolder ($FolderName=NULL, $OwnerId=NULL)
 Create new folder that can contain multiple types of items. More...
 
 GetFolderCount ()
 Get total number of folders currently existing. More...
 
 GetFolderByNormalizedName ($NormalizedName, $OwnerId=NULL)
 Retrieve folder with specified normalized name (as generated by Folder::NormalizeFolderName() method). More...
 
 GetFoldersContainingItem ($Item, $ItemType, $OwnerId=NULL, $SharedFoldersOnly=FALSE)
 Retrieve folders containing specified item. More...
 
 GetFolders ($ItemType=NULL, $OwnerId=NULL, $Name=NULL, $Offset=0, $Count=NULL)
 Retrieve folders with specified name, owner, or default content type. More...
 
- Public Member Functions inherited from ItemFactory
 __construct ($ItemClassName, $ItemTableName, $ItemIdColumnName, $ItemNameColumnName=NULL, $OrderOpsAllowed=FALSE, $SqlCondition=NULL)
 Class constructor. More...
 
 GetItemClassName ()
 Get class name of items manipulated by factory. More...
 
 CleanOutStaleTempItems ($MinutesUntilStale=10080)
 Clear out (call the Delete() method) for any temp items more than specified number of minutes old. More...
 
 GetNextItemId ()
 Retrieve next available (non-temp) item ID. More...
 
 GetHighestItemId ($IgnoreSqlCondition=FALSE)
 Retrieve highest item ID in use. More...
 
 GetNextTempItemId ()
 Return next available temporary item ID. More...
 
 GetItemCount ($Condition=NULL, $IncludeTempItems=FALSE)
 Get count of items. More...
 
 GetItemIds ($Condition=NULL, $IncludeTempItems=FALSE, $SortField=NULL, $SortAscending=TRUE)
 Return array of item IDs. More...
 
 GetLatestModificationDate ($Condition=NULL)
 Get newest modification date (based on values in "DateLastModified" column in database table). More...
 
 GetItem ($ItemId)
 Retrieve item by item ID. More...
 
 ItemExists ($ItemId, $IgnoreSqlCondition=FALSE)
 Check that item exists with specified ID. More...
 
 GetItemByName ($Name, $IgnoreCase=FALSE)
 Retrieve item by name. More...
 
 GetItemIdByName ($Name, $IgnoreCase=FALSE)
 Retrieve item ID by name. More...
 
 GetItemIdsByNames ($Names)
 Look up IDs for specified names. More...
 
 GetItemNames ($SqlCondition=NULL)
 Retrieve item names. More...
 
 GetItems ($SqlCondition=NULL)
 Retrieve items. More...
 
 GetItemsAsOptionList ($OptionListName, $SelectedItemId=NULL, $SqlCondition=NULL, $DisplaySize=1, $SubmitOnChange=FALSE, $Disabled=FALSE)
 Retrieve items of specified type as HTML option list with item names as labels and item IDs as value attributes. More...
 
 NameIsInUse ($Name, $IgnoreCase=FALSE)
 Check whether item name is currently in use. More...
 
 SearchForItemNames ($SearchString, $NumberOfResults=100, $IncludeVariants=FALSE, $UseBooleanMode=TRUE, $Offset=0, $IdExclusions=array(), $NameExclusions=array())
 Retrieve items with names matching search string. More...
 
 GetCountForItemNames ($SearchString, $IncludeVariants=FALSE, $UseBooleanMode=TRUE, $IdExclusions=array(), $NameExclusions=array())
 Retrieve count of items with names matching search string. More...
 
 ReindexByItemIds ($Array)
 Reindex supplied associative array, by replacing item names with item IDs. More...
 
 CachingEnabled ($NewValue=NULL)
 Enable/disable caching of item information. More...
 
 ClearCaches ()
 Clear item information caches. More...
 
 SetOrderOpsCondition ($Condition)
 Set SQL condition (added to WHERE clause) used to select items for ordering operations. More...
 
 InsertBefore ($TargetItem, $NewItem)
 Insert item into order before specified item. More...
 
 InsertAfter ($TargetItem, $NewItem)
 Insert item into order after specified item. More...
 
 Prepend ($Item)
 Add item to beginning of order. More...
 
 Append ($Item)
 Add item to end of order. More...
 
 GetItemIdsInOrder ()
 Retrieve list of item IDs in order. More...
 
 RemoveItemFromOrder ($ItemId)
 Remove item from existing order. More...
 

Additional Inherited Members

- Protected Attributes inherited from ItemFactory
 $DB
 

Detailed Description

Factory object for Folder class, used to retrieve and manage Folders and groups of Folders.

Definition at line 14 of file FolderFactory.php.

Constructor & Destructor Documentation

FolderFactory::__construct (   $OwnerId = NULL)

Constructor for FolderFactory.

Parameters
int$OwnerIdID of owner of folders to be manipulated by factory. If specified then all operations pertain only to folders with the specified owner. (OPTIONAL)

Definition at line 25 of file FolderFactory.php.

References ItemFactory\SetOrderOpsCondition().

Member Function Documentation

FolderFactory::CreateFolder (   $ItemType,
  $FolderName = NULL,
  $OwnerId = NULL 
)

Create new folder that will contain only one type of item.

Parameters
mixed$ItemTypeType of item that folder will contain.
string$FolderNameString containing name of folder. (OPTIONAL)
int$OwnerIdNumerical ID of folder owner. (OPTIONAL)
Returns
Folder New folder object.

Definition at line 45 of file FolderFactory.php.

References Folder\GetItemTypeId(), and Folder\MIXEDCONTENT.

Referenced by CreateMixedFolder().

Here is the caller graph for this function:

FolderFactory::CreateMixedFolder (   $FolderName = NULL,
  $OwnerId = NULL 
)

Create new folder that can contain multiple types of items.

(This is a separate operation because mixed item types incurs execution overhead.)

Parameters
string$FolderNameString containing name of folder. (OPTIONAL)
int$OwnerIdNumerical ID of folder owner. (OPTIONAL)
Returns
Folder New folder object.

Definition at line 75 of file FolderFactory.php.

References CreateFolder(), and Folder\MIXEDCONTENT.

FolderFactory::GetFolderByNormalizedName (   $NormalizedName,
  $OwnerId = NULL 
)

Retrieve folder with specified normalized name (as generated by Folder::NormalizeFolderName() method).

Parameters
string$NormalizedNameNormalized folder name.
int$OwnerIdID of folder owner. (OPTIONAL)
Returns
Folder|null Folder object or NULL if no folder found. If multiple folders with the specified name are found, the one with the lowest folder ID is returned.

Definition at line 100 of file FolderFactory.php.

FolderFactory::GetFolderCount ( )

Get total number of folders currently existing.

Returns
int Number of folders.

Definition at line 85 of file FolderFactory.php.

References ItemFactory\GetItemCount().

FolderFactory::GetFolders (   $ItemType = NULL,
  $OwnerId = NULL,
  $Name = NULL,
  $Offset = 0,
  $Count = NULL 
)

Retrieve folders with specified name, owner, or default content type.

If no parameters are specified, all existing folders are returned. If no owner ID parameter is supplied and an owner ID was specified for FolderFactory::FolderFactory(), then that owner ID is used.

Parameters
mixed$ItemTypeString containing type of item to search for as default content type of folder. To search for only mixed-content-type folders specify Folder::MIXEDCONTENT. (OPTIONAL, defaults to NULL)
int$OwnerIdNumerical ID of folder owner. (OPTIONAL, defaults to NULL)
string$NameString containing target folder name. (OPTIONAL, defaults to NULL)
int$OffsetZero-based offset into list of folders. (OPTIONAL)
int$CountNumber of folders to retrieve beginning at specified offset. (OPTIONAL)
Returns
array Array of Folder objects that match specified parameters.

Definition at line 190 of file FolderFactory.php.

References ItemFactory\GetItemIds(), Folder\GetItemTypeId(), and Folder\MIXEDCONTENT.

FolderFactory::GetFoldersContainingItem (   $Item,
  $ItemType,
  $OwnerId = NULL,
  $SharedFoldersOnly = FALSE 
)

Retrieve folders containing specified item.

Parameters
object$ItemObject (must have Id() method) or item ID.
mixed$ItemTypeThe item type.
int$OwnerIdOptional owner ID to restrict folders to.
bool$SharedFoldersOnlyWhether to only return shared folders.
Returns
array Array of Folder objects that contain specified item.

Definition at line 134 of file FolderFactory.php.

References Folder\GetItemTypeId(), and Folder\MIXEDCONTENT.


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