@@ -0,0 +1,43 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* The class which handles Twig cache rescan process.
|
||||
*
|
||||
* @author Time.ly Network Inc.
|
||||
* @since 2.0
|
||||
*
|
||||
* @package AI1EC
|
||||
* @subpackage AI1EC.Twig
|
||||
*/
|
||||
class Ai1ec_Twig_Cache extends Ai1ec_Base {
|
||||
|
||||
/**
|
||||
* Rescan cache for writable directory.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function rescan() {
|
||||
$cache_dir = $this->_registry->get( 'theme.loader' )
|
||||
->get_cache_dir( true );
|
||||
$render_json = $this->_registry->get(
|
||||
'http.response.render.strategy.json'
|
||||
);
|
||||
$output['data'] = array(
|
||||
'state' => (int)(false !== $cache_dir),
|
||||
);
|
||||
$render_json->render( $output );
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets Twig cache as unavailable and notifies admin.
|
||||
*
|
||||
* @param string $cache_dir Cache dir.
|
||||
*
|
||||
* @throws Ai1ec_Bootstrap_Exception
|
||||
*/
|
||||
public function set_unavailable( $cache_dir = AI1EC_TWIG_CACHE_PATH ) {
|
||||
$this->_registry->get( 'model.settings' )
|
||||
->set( 'twig_cache', AI1EC_CACHE_UNAVAILABLE );
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user