CWIS Developer Documentation
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
Classification Class Reference

Metadata type representing hierarchical ("Tree") controlled vocabulary values. More...

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

Public Member Functions

 Id ()
 Get Classification ID. More...
 
 FullName ()
 Get full classification name (all segments). More...
 
 Name ()
 Get name of classification segment. More...
 
 VariantName ()
 Get variant name of classification, if any. More...
 
 Depth ()
 Get depth of classification in hierarchy. More...
 
 ResourceCount ()
 Get number of released resources having this classification assigned to them. More...
 
 FullResourceCount ()
 Get number of all resources (minus temporary ones) having this classification assigned to them. More...
 
 ParentId ()
 Get ID of parent Classification. More...
 
 SegmentName ($NewValue=DB_NOVALUE)
 Get or set the segment name. More...
 
 LinkString ($NewValue=DB_NOVALUE)
 Get or set the stored link string for the Classification. More...
 
 QualifierId ($NewValue=DB_NOVALUE)
 Get or set the Qualifier associated with the Classification by ID. More...
 
 FieldId ($NewValue=DB_NOVALUE)
 Get or set the ID of the MetadataField for the Classification. More...
 
 Qualifier ($NewValue=DB_NOVALUE)
 Get or set the Qualifier associated with the Classification. More...
 
 RecalcDepthAndFullName ()
 Rebuild classification full name and recalculate depth in hierarchy. More...
 
 UpdateLastAssigned ()
 Update the LastAssigned timestamp for this classification. More...
 
 RecalcResourceCount ($IdsToSkip=NULL)
 Recalculate number of resources assigned to class and any parent classes. More...
 
 ChildCount ()
 Get number of classifications that have this Classification as their direct parent. More...
 
 ChildList ()
 Get list of IDs of Classifications that have this class as an "ancestor" (parent, grandparent, great-grandparent, etc). More...
 
 Delete ($DeleteParents=FALSE, $DeleteIfHasResources=FALSE, $DeleteIfHasChildren=FALSE)
 Remove Classification (and accompanying associations) from database. More...
 
- Public Member Functions inherited from Item
 __construct ($Id)
 Constructor, used to load existing items. More...
 
 Delete ()
 Destroy item. More...
 
 Id ()
 Get item ID. More...
 

Static Public Member Functions

static Create ($Name, $FieldId, $ParentId=NULL)
 Add new classification to the hierarchy. More...
 
static SegmentsCreated ()
 Get number of new segments (Classifications) generated when creating a new Classification with a full name. More...
 
- Static Public Member Functions inherited from Item
static GetCanonicalId ($Id)
 Normalize item ID to canonical form. More...
 
static ItemExists ($Id)
 Check whether an item exists with the specified ID. More...
 

Public Attributes

const NOPARENT = -1
 Parent value for classifications with no parent. More...
 

Additional Inherited Members

- Protected Member Functions inherited from Item
 UpdateValue ($ColumnName, $NewValue=DB_NOVALUE)
 Convenience function to supply parameters to Database->UpdateValue(). More...
 
- Static Protected Member Functions inherited from Item
static CreateWithValues ($Values)
 Create a new item, using specified initial database values. More...
 
static SetDatabaseAccessValues ($ClassName)
 Set the database access values (table name, ID column name, name column name) for specified class. More...
 
- Protected Attributes inherited from Item
 $DB
 
 $Id
 
 $ItemIdColumnName
 
 $ItemNameColumnName
 
 $ItemTableName
 
 $ValueCache = array()
 
- Static Protected Attributes inherited from Item
static $ItemIdColumnNames
 
static $ItemNameColumnNames
 
static $ItemTableNames
 

Detailed Description

Metadata type representing hierarchical ("Tree") controlled vocabulary values.

Definition at line 13 of file Classification.php.

Member Function Documentation

Classification::ChildCount ( )

Get number of classifications that have this Classification as their direct parent.

Returns
Count of child Classifications.

Definition at line 468 of file Classification.php.

References Id().

Referenced by Delete().

Here is the caller graph for this function:

Classification::ChildList ( )

Get list of IDs of Classifications that have this class as an "ancestor" (parent, grandparent, great-grandparent, etc).

Returns
Array of child/grandchild/etc Classification IDs.

Definition at line 482 of file Classification.php.

References Id().

static Classification::Create (   $Name,
  $FieldId,
  $ParentId = NULL 
)
static

Add new classification to the hierarchy.

Parameters
string$NameFull name or segment name for new Classification. Segment name can be used if a parent ID is also supplied, otherwise full name is assumed.
int$FieldIdMetadataField ID for new Classification.
int$ParentIdID of parent in hierachy of for new Classification. Use Classification::NOPARENT for new Classification with no parent (i.e. at top level of hierarchy). (OPTIONAL - only required if full classification name is not supplied)

Definition at line 31 of file Classification.php.

References Item\$DB.

Referenced by Resource_Test\testGetandSet().

Here is the caller graph for this function:

Classification::Delete (   $DeleteParents = FALSE,
  $DeleteIfHasResources = FALSE,
  $DeleteIfHasChildren = FALSE 
)

Remove Classification (and accompanying associations) from database.

Parameters
bool$DeleteParentsFlag indicating whether to also delete Classification entries above this one in the hierarchy. (OPTIONAL
  • defaults to FALSE)
bool$DeleteIfHasResourcesFlag indicating whether to delete the Classification if it still has Resources associated with it. (OPTIONAL - defaults to FALSE)
bool$DeleteIfHasChildrenFlag indicating whether to delete the Classification if others have it as a parent. (OPTIONAL - defaults to FALSE)
Returns
int Number of classifications deleted.

Definition at line 516 of file Classification.php.

References ChildCount(), Id(), RecalcResourceCount(), and ResourceCount().

Classification::Depth ( )

Get depth of classification in hierarchy.

Top level is depth of 0.

Returns
Depth in hierarchy.

Definition at line 216 of file Classification.php.

Classification::FieldId (   $NewValue = DB_NOVALUE)

Get or set the ID of the MetadataField for the Classification.

Parameters
int$NewValueID of new MetadataField.
Returns
ID of currently associated MetadataField.

Definition at line 298 of file Classification.php.

References Item\UpdateValue().

Classification::FullName ( )

Get full classification name (all segments).

Returns
Classification name.

Definition at line 189 of file Classification.php.

Referenced by Name().

Here is the caller graph for this function:

Classification::FullResourceCount ( )

Get number of all resources (minus temporary ones) having this classification assigned to them.

This is only updated by RecalcResourceCount() and Delete().

Returns
Count of all resources having this classification.

Definition at line 237 of file Classification.php.

Classification::Id ( )

Get Classification ID.

Returns
Numerical Classification ID.

Definition at line 180 of file Classification.php.

References Item\$Id.

Referenced by ChildCount(), ChildList(), Delete(), RecalcDepthAndFullName(), RecalcResourceCount(), and UpdateLastAssigned().

Here is the caller graph for this function:

Classification::LinkString (   $NewValue = DB_NOVALUE)

Get or set the stored link string for the Classification.

(This value is not used, updated, or manipulated in any way by Classification, and is only being stored as a UI optimization.)

Parameters
string$NewValueNew link string.
Returns
Current link string.

Definition at line 277 of file Classification.php.

References Item\UpdateValue().

Classification::Name ( )

Get name of classification segment.

Returns
Segment name.

Definition at line 198 of file Classification.php.

References FullName().

Classification::ParentId ( )

Get ID of parent Classification.

Returns Classification::NOPARENT if no parent (i.e. Classification is at top level of hierarchy).

Definition at line 255 of file Classification.php.

Classification::Qualifier (   $NewValue = DB_NOVALUE)

Get or set the Qualifier associated with the Classification.

Parameters
Qualifier$NewValueNew Qualifier.
Returns
Associated Qualifier (object) or NULL if no qualifier.
See also
Classification::QualifierId()

Definition at line 309 of file Classification.php.

References DB_NOVALUE, and QualifierId().

Classification::QualifierId (   $NewValue = DB_NOVALUE)

Get or set the Qualifier associated with the Classification by ID.

Parameters
int$NewValueID of new Qualifier.
Returns
ID of current Qualifier.
See also
Classifiaction::Qualifier()

Definition at line 288 of file Classification.php.

References Item\UpdateValue().

Referenced by Qualifier().

Here is the caller graph for this function:

Classification::RecalcDepthAndFullName ( )

Rebuild classification full name and recalculate depth in hierarchy.

This is a DB-intensive and recursive function, and so should not be called without some forethought.

Definition at line 344 of file Classification.php.

References Id(), and Item\UpdateValue().

Classification::RecalcResourceCount (   $IdsToSkip = NULL)

Recalculate number of resources assigned to class and any parent classes.

This is a DB-intensive and recursive function, and so should not be called without some forethought.

Parameters
array$IdsToSkipClassification IDs to skip during recalculation. (OPTIONAL)
Returns
Array of IDs of the Classifications that were updated.

Definition at line 403 of file Classification.php.

References Item\$Id, Id(), and Item\UpdateValue().

Referenced by Delete().

Here is the caller graph for this function:

Classification::ResourceCount ( )

Get number of released resources having this classification assigned to them.

This is only updated by RecalcResourceCount() and Delete().

Returns
Count of released resources having this classification.

Definition at line 226 of file Classification.php.

Referenced by Delete().

Here is the caller graph for this function:

Classification::SegmentName (   $NewValue = DB_NOVALUE)

Get or set the segment name.

Parameters
string$NewValueNew segment name. (OPTIONAL)
Returns
Segment name.

Definition at line 265 of file Classification.php.

References Item\UpdateValue().

static Classification::SegmentsCreated ( )
static

Get number of new segments (Classifications) generated when creating a new Classification with a full name.

Definition at line 246 of file Classification.php.

Classification::UpdateLastAssigned ( )

Update the LastAssigned timestamp for this classification.

Definition at line 390 of file Classification.php.

References Id().

Classification::VariantName ( )

Get variant name of classification, if any.

Returns
Variant name.

Definition at line 207 of file Classification.php.

Member Data Documentation

const Classification::NOPARENT = -1

Parent value for classifications with no parent.

Definition at line 18 of file Classification.php.


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