Seditio Source
Root |
./othercms/croogo-4.0.7/vendor/croogo/croogo/FileManager/src/Model/Table/AssetUsagesTable.php
<?php

namespace Croogo\FileManager\Model\Table;

use
ArrayObject;
use
Cake\Cache\Cache;
use
Cake\Datasource\EntityInterface;
use
Cake\Event\Event;
use
Croogo\Core\Model\Table\CroogoTable;

/**
 * AssetUsages Table
 *
 */
class AssetUsagesTable extends CroogoTable
{

   
/**
     * @param array $config
     * @return void
     */
   
public function initialize(array $config)
    {
       
$this->setTable('asset_usages');

       
$this->belongsTo('Assets', [
           
'className' => 'Croogo/FileManager.Assets',
           
'foreignKey' => 'asset_id',
        ]);

       
$this->addBehavior('Croogo/Core.Trackable');
    }

   
/**
     * @param Event $event
     * @param EntityInterface $entity
     * @param ArrayObject $options
     *
     * @return bool
     */
   
public function beforeSave(Event $event, EntityInterface $entity, ArrayObject $options)
    {
        if (!empty(
$entity->featured_image)) {
           
$entity->type = 'FeaturedImage';
           
$entity->unsetProperty('featured_image');
        }

        return
true;
    }

   
/**
     * After Save Handler
     */
   
public function afterSave(Event $event, EntityInterface $entity, ArrayObject $options)
    {
       
Cache::clearGroup('nodes');
    }

}