kernel/classes/ezcache.php
static function purgeImageAlias( $cacheItem )
    {
        // 1. fetch ezcontentclass having an ezimage attribute
        // 2. fetch objects of these classes
        // 3. purge image alias for all version

        $imageContentClassAttributes = eZContentClassAttribute::fetchList(
            true,
            array(
                'data_type' => 'ezimage',
                'version' => eZContentClass::VERSION_STATUS_DEFINED
            )
        );
        $classIds = array();
        $attributeIdentifiersByClass = array();
        foreach ( $imageContentClassAttributes as $ccAttr )
        {
            $identifier = $ccAttr->attribute( 'identifier' );
            $ccId = $ccAttr->attribute( 'contentclass_id' );
            if ( !isset( $attributeIdentifiersByClass[$ccId] ) )
            {
                $attributeIdentifiersByClass[$ccId] = array();
            }
            $attributeIdentifiersByClass[$ccId][] = $identifier;
            $classIds[] = $ccId;

        }

        $subTreeParams = array(
            'ClassFilterType' => 'include',
            'ClassFilterArray' => $classIds,
            'MainNodeOnly' => true,
            'IgnoreVisibility' => true,
            'LoadDataMap' => false,
            'Limit' => 100,
            'Offset' => 0
        );
        $count = 0;
        while ( true )
        {
            $nodes = eZContentObjectTreeNode::subTreeByNodeID( $subTreeParams, 1 );
            if ( empty( $nodes ) )
            {
                break;
            }
            foreach ( $nodes as $node )
            {
                call_user_func( $cacheItem['reporter'], '', $count );
                $object = $node->attribute( 'object' );
                self::purgeImageAliasForObject(
                    $cacheItem, $object, $attributeIdentifiersByClass[$object->attribute( 'contentclass_id' )]
                );
                $count++;
            }
            eZContentObject::clearCache();
            $subTreeParams['Offset'] += $subTreeParams['Limit'];
        }
        self::clearImageAlias( $cacheItem );
    }
static function purgeImageAlias( $cacheItem )
    {
        // 1. fetch ezcontentclass having an ezimage attribute
        // 2. fetch objects of these classes
        // 3. purge image alias for all version

        $imageContentClassAttributes = eZContentClassAttribute::fetchList(
            true,
            array(
                'data_type' => 'ezimage',
                'version' => eZContentClass::VERSION_STATUS_DEFINED
            )
        );
        $classIds = array();
        $attributeIdentifiersByClass = array();
        foreach ( $imageContentClassAttributes as $ccAttr )
        {
            $identifier = $ccAttr->attribute( 'identifier' );
            $ccId = $ccAttr->attribute( 'contentclass_id' );
            if ( !isset( $attributeIdentifiersByClass[$ccId] ) )
            {
                $attributeIdentifiersByClass[$ccId] = array();
            }
            $attributeIdentifiersByClass[$ccId][] = $identifier;
            $classIds[] = $ccId;

        }

        $subTreeParams = array(
            'ClassFilterType' => 'include',
            'ClassFilterArray' => $classIds,
            'MainNodeOnly' => true,
            'IgnoreVisibility' => true,
            'LoadDataMap' => false,
            'Limit' => 100,
            'Offset' => 0
        );
        $count = 0;
        while ( true )
        {
            $nodes = eZContentObjectTreeNode::subTreeByNodeID( $subTreeParams, 1 );
            if ( empty( $nodes ) )
            {
                break;
            }
            foreach ( $nodes as $node )
            {
                call_user_func( $cacheItem['reporter'], '', $count );
                $object = $node->attribute( 'object' );
                self::purgeImageAliasForObject(
                    $cacheItem, $object, $attributeIdentifiersByClass[$object->attribute( 'contentclass_id' )]
                );
                $count++;
            }
            eZContentObject::clearCache();
            $subTreeParams['Offset'] += $subTreeParams['Limit'];
        }
        self::clearImageAlias( $cacheItem );
    }
static function purgeImageAlias ( $ cacheItem ) { // 1. fetch ezcontentclass having an ezimage attribute // 2. fetch objects of these classes // 3. purge image alias for all version $ imageContentClassAttributes = eZContentClassAttribute :: fetchList ( true , array ( 'data_type' => 'ezimage' , 'version' => eZContentClass :: VERSION_STATUS_DEFINED ) ) ; $ classIds = array ( ) ; $ attributeIdentifiersByClass = array ( ) ; foreach ( $ imageContentClassAttributes as $ ccAttr ) { $ identifier = $ ccAttr -> attribute ( 'identifier' ) ; $ ccId = $ ccAttr -> attribute ( 'contentclass_id' ) ; if ( ! isset ( $ attributeIdentifiersByClass [ $ ccId ] ) ) { $ attributeIdentifiersByClass [ $ ccId ] = array ( ) ; } $ attributeIdentifiersByClass [ $ ccId ] [ ] = $ identifier ; $ classIds [ ] = $ ccId ; } $ subTreeParams = array ( 'ClassFilterType' => 'include' , 'ClassFilterArray' => $ classIds , 'MainNodeOnly' => true , 'IgnoreVisibility' => true , 'LoadDataMap' => false , 'Limit' => 100 , 'Offset' => 0 ) ; $ count = 0 ; while ( true ) { $ nodes = eZContentObjectTreeNode :: subTreeByNodeID ( $ subTreeParams , 1 ) ; if ( empty ( $ nodes ) ) { break ; } foreach ( $ nodes as $ node ) { call_user_func ( $ cacheItem [ 'reporter' ] , '' , $ count ) ; $ object = $ node -> attribute ( 'object' ) ; self :: purgeImageAliasForObject ( $ cacheItem , $ object , $ attributeIdentifiersByClass [ $ object -> attribute ( 'contentclass_id' ) ] ) ; $ count ++ ; } eZContentObject :: clearCache ( ) ; $ subTreeParams [ 'Offset' ] += $ subTreeParams [ 'Limit' ] ; } self :: clearImageAlias ( $ cacheItem ) ; }
Purges the image aliases of all ezimage attribute. The original image is
kept.

@param array $cacheItem
@access public
Purges the image aliases of all ezimage attribute . The original image is kept .