示例#1
0
 protected function _afterSave()
 {
     parent::_afterSave();
     if ($this->isDirty('login_kwf_upload_id')) {
         Kwf_Media::clearCache('Kwf_Util_Model_Welcome', $this->id, 'LoginImage');
         Kwf_Media::clearCache('Kwf_Util_Model_Welcome', $this->id, 'LoginImageLarge');
     }
     if ($this->isDirty('kwf_upload_id')) {
         Kwf_Media::clearCache('Kwf_Util_Model_Welcome', $this->id, 'WelcomeImage');
     }
 }
 public function testOutputCache()
 {
     Kwf_Media_TestMediaOutputClass::$called = 0;
     $id = time() + rand(0, 10000);
     Kwf_Media::clearCache('Kwf_Media_TestMediaOutputClass', $id, 'simple');
     $o = Kwf_Media::getOutput('Kwf_Media_TestMediaOutputClass', $id, 'simple');
     unset($o['mtime']);
     $this->assertEquals(array('mimeType' => 'text/plain', 'contents' => 'foobar' . $id), $o);
     $this->assertEquals(1, Kwf_Media_TestMediaOutputClass::$called);
     $o = Kwf_Media::getOutput('Kwf_Media_TestMediaOutputClass', $id, 'simple');
     unset($o['mtime']);
     $this->assertEquals(array('mimeType' => 'text/plain', 'contents' => 'foobar' . $id), $o);
     $this->assertEquals(1, Kwf_Media_TestMediaOutputClass::$called);
     Kwf_Media::clearCache('Kwf_Media_TestMediaOutputClass', $id, 'simple');
     Kwf_Media::getOutput('Kwf_Media_TestMediaOutputClass', $id, 'simple');
     $this->assertEquals(2, Kwf_Media_TestMediaOutputClass::$called);
 }
示例#3
0
 public function testClearOutputCacheWhenChangingCropOptions()
 {
     $this->assertEquals('dh-{width}-dc16b9', $this->_root->getComponentById('root_page')->getComponent()->getBaseType());
     $dim = $this->_root->getComponentById('root_page')->getComponent()->getImageDimensions();
     Kwf_Media::clearCache('Kwc_Basic_Image_Crop_ImageComponent', 'root_page', Kwf_Media::DONT_HASH_TYPE_PREFIX . $dim['width'] . '-dc16b9');
     Kwc_Basic_Image_Crop_ImageComponent::$getMediaOutputCalled = 0;
     Kwf_Media::getOutput('Kwc_Basic_Image_Crop_ImageComponent', 'root_page', Kwf_Media::DONT_HASH_TYPE_PREFIX . $dim['width'] . '-dc16b9');
     $this->assertEquals(1, Kwc_Basic_Image_Crop_ImageComponent::$getMediaOutputCalled);
     Kwf_Media::getOutput('Kwc_Basic_Image_Crop_ImageComponent', 'root_page', Kwf_Media::DONT_HASH_TYPE_PREFIX . $dim['width'] . '-dc16b9');
     $this->assertEquals(1, Kwc_Basic_Image_Crop_ImageComponent::$getMediaOutputCalled);
     $c = $this->_root->getComponentById('root_page');
     $row = Kwf_Model_Abstract::getInstance('Kwc_Basic_Image_Crop_TestModel')->getRow('root_page');
     $row->crop_x = 20;
     $row->save();
     Kwf_Events_ModelObserver::getInstance()->process();
     Kwf_Media::getOutput('Kwc_Basic_Image_Crop_ImageComponent', 'root_page', Kwf_Media::DONT_HASH_TYPE_PREFIX . $dim['width'] . '-dc16b9');
     $this->assertEquals(2, Kwc_Basic_Image_Crop_ImageComponent::$getMediaOutputCalled);
 }
 public function onMediaChanged(Kwf_Events_Event_Media_Changed $event)
 {
     Kwf_Media::clearCache($event->class, $event->component->componentId, $event->type);
     $log = Kwf_Events_Log::getInstance();
     if ($log) {
         $log->log("media cache clear class={$event->class} id={$event->component->componentId} type={$event->type}", Zend_Log::INFO);
     }
 }
示例#5
0
 public function testClearOutputCache()
 {
     $c = $this->_root->getComponentById('1600');
     $this->assertEquals(Kwf_Media::DONT_HASH_TYPE_PREFIX . '{width}-76b7ff', $c->getComponent()->getBaseType());
     Kwf_Media::clearCache('Kwc_Basic_Image_FixDimensionComponent', '1600', Kwf_Media::DONT_HASH_TYPE_PREFIX . '16-76b7ff');
     Kwc_Basic_Image_FixDimensionComponent::$getMediaOutputCalled = 0;
     Kwf_Media::getOutput('Kwc_Basic_Image_FixDimensionComponent', '1600', Kwf_Media::DONT_HASH_TYPE_PREFIX . '16-76b7ff');
     $this->assertEquals(1, Kwc_Basic_Image_FixDimensionComponent::$getMediaOutputCalled);
     Kwf_Media::getOutput('Kwc_Basic_Image_FixDimensionComponent', '1600', Kwf_Media::DONT_HASH_TYPE_PREFIX . '16-76b7ff');
     $this->assertEquals(1, Kwc_Basic_Image_FixDimensionComponent::$getMediaOutputCalled);
     Kwf_Media::clearCache('Kwc_Basic_Image_FixDimensionComponent', '1600', Kwf_Media::DONT_HASH_TYPE_PREFIX . '16-76b7ff');
     Kwf_Media::getOutput('Kwc_Basic_Image_FixDimensionComponent', '1600', Kwf_Media::DONT_HASH_TYPE_PREFIX . '16-76b7ff');
     $this->assertEquals(2, Kwc_Basic_Image_FixDimensionComponent::$getMediaOutputCalled);
     $row = Kwf_Model_Abstract::getInstance('Kwc_Basic_Image_TestModel')->getRow('1600');
     $row->kwf_upload_id = 2;
     $row->save();
     Kwf_Events_ModelObserver::getInstance()->process();
     Kwf_Component_Data_Root::reset();
     Kwf_Media::getOutput('Kwc_Basic_Image_FixDimensionComponent', '1600', Kwf_Media::DONT_HASH_TYPE_PREFIX . '100-76b7ff');
     $this->assertEquals(3, Kwc_Basic_Image_FixDimensionComponent::$getMediaOutputCalled);
 }