Пример #1
0
 /**
  * test use of css() and timestamping with plugin syntax
  *
  * @return void
  */
 public function testPluginCssTimestamping()
 {
     Plugin::load('TestPlugin');
     Configure::write('debug', true);
     Configure::write('Asset.timestamp', true);
     $expected = array('link' => array('rel' => 'stylesheet', 'href' => ''));
     $result = $this->Html->css('TestPlugin.test_plugin_asset');
     $expected['link']['href'] = 'preg:/.*test_plugin\\/css\\/test_plugin_asset\\.css\\?[0-9]+/';
     $this->assertTags($result, $expected);
     Configure::write('debug', false);
     $result = $this->Html->css('TestPlugin.test_plugin_asset');
     $expected['link']['href'] = 'preg:/.*test_plugin\\/css\\/test_plugin_asset\\.css/';
     $this->assertTags($result, $expected);
     Configure::write('Asset.timestamp', 'force');
     $result = $this->Html->css('TestPlugin.test_plugin_asset');
     $expected['link']['href'] = 'preg:/.*test_plugin\\/css\\/test_plugin_asset\\.css\\?[0-9]+/';
     $this->assertTags($result, $expected);
     $this->Html->request->webroot = '/testing/';
     $result = $this->Html->css('TestPlugin.test_plugin_asset');
     $expected['link']['href'] = 'preg:/\\/testing\\/test_plugin\\/css\\/test_plugin_asset\\.css\\?[0-9]+/';
     $this->assertTags($result, $expected);
     $this->Html->request->webroot = '/testing/longer/';
     $result = $this->Html->css('TestPlugin.test_plugin_asset');
     $expected['link']['href'] = 'preg:/\\/testing\\/longer\\/test_plugin\\/css\\/test_plugin_asset\\.css\\?[0-9]+/';
     $this->assertTags($result, $expected);
     Plugin::unload('TestPlugin');
 }
Пример #2
0
 /**
  * test use of css() and timestamping
  *
  * @return void
  */
 function testCssTimestamping()
 {
     Configure::write('debug', 2);
     Configure::write('Asset.timestamp', true);
     $expected = array('link' => array('rel' => 'stylesheet', 'type' => 'text/css', 'href' => ''));
     $result = $this->Html->css('cake.generic');
     $expected['link']['href'] = 'preg:/.*css\\/cake\\.generic\\.css\\?[0-9]+/';
     $this->assertTags($result, $expected);
     Configure::write('debug', 0);
     $result = $this->Html->css('cake.generic');
     $expected['link']['href'] = 'preg:/.*css\\/cake\\.generic\\.css/';
     $this->assertTags($result, $expected);
     Configure::write('Asset.timestamp', 'force');
     $result = $this->Html->css('cake.generic');
     $expected['link']['href'] = 'preg:/.*css\\/cake\\.generic\\.css\\?[0-9]+/';
     $this->assertTags($result, $expected);
     $webroot = $this->Html->webroot;
     $this->Html->webroot = '/testing/';
     $result = $this->Html->css('cake.generic');
     $expected['link']['href'] = 'preg:/\\/testing\\/css\\/cake\\.generic\\.css\\?[0-9]+/';
     $this->assertTags($result, $expected);
     $this->Html->webroot = $webroot;
     $webroot = $this->Html->webroot;
     $this->Html->webroot = '/testing/longer/';
     $result = $this->Html->css('cake.generic');
     $expected['link']['href'] = 'preg:/\\/testing\\/longer\\/css\\/cake\\.generic\\.css\\?[0-9]+/';
     $this->assertTags($result, $expected);
     $this->Html->webroot = $webroot;
 }
 /**
  * Initialize CakePdf object
  * @param  array $params
  * @return boolean
  */
 public function init($params)
 {
     if (empty($params)) {
         return false;
     }
     $params = $this->__buildParams($params);
     $this->config = Configure::read('PdfGenerator.pdf');
     $this->generateParams = $params;
     self::$pageNumber = 0;
     require_once App::pluginPath('CakePdf') . 'Pdf/CakePdf.php';
     $this->CakePdf = new CakePdf();
     //$this->CakePdf->theme($pdf['theme']);
     $this->CakePdf->css($this->config['css']);
     $this->CakePdf->template($this->config['template'], false);
     $this->CakePdf->margin(Configure::read('CakePdf.margin'));
     foreach ($this->config['pages'] as &$page) {
         $el = explode(DS, $page['element']);
         if (end($el) == 'documents') {
             $page['settings']['documents'] = $this->getDataDocumentsByUrl($params['curl']);
             break;
         }
     }
     $viewVars = array('pdf' => array('pages' => $this->config['pages'], 'date' => $this->getDate(), 'curl' => $this->getDocumentsUrl($params['curl'])));
     $this->CakePdf->viewVars($viewVars);
     return true;
 }
Пример #4
0
 /**
  * Tests that CSS and Javascript files of the same name don't conflict with the 'once' test
  *
  * @return void
  */
 public function testCssAndScriptWithSameName()
 {
     $result = $this->Html->css('foo');
     $expected = ['link' => ['rel' => 'stylesheet', 'href' => 'preg:/.*css\\/foo\\.css/']];
     $this->assertHtml($expected, $result);
     $result = $this->Html->script('foo');
     $expected = ['script' => ['src' => 'js/foo.js']];
     $this->assertHtml($expected, $result);
 }
Пример #5
0
 /**
  * testCssLink method
  *
  * @access public
  * @return void
  */
 function testCssLink()
 {
     Configure::write('Asset.timestamp', false);
     Configure::write('Asset.filter.css', false);
     $result = $this->Html->css('screen');
     $expected = array('link' => array('rel' => 'stylesheet', 'type' => 'text/css', 'href' => 'preg:/.*css\\/screen\\.css/'));
     $this->assertTags($result, $expected);
     $result = $this->Html->css('screen.css');
     $this->assertTags($result, $expected);
     $result = $this->Html->css('screen.css?1234');
     $expected['link']['href'] = 'preg:/.*css\\/screen\\.css\\?1234/';
     $this->assertTags($result, $expected);
     $result = $this->Html->css('http://whatever.com/screen.css?1234');
     $expected['link']['href'] = 'preg:/http:\\/\\/.*\\/screen\\.css\\?1234/';
     $this->assertTags($result, $expected);
     Configure::write('Asset.filter.css', 'css.php');
     $result = $this->Html->css('cake.generic');
     $expected['link']['href'] = 'preg:/.*ccss\\/cake\\.generic\\.css/';
     $this->assertTags($result, $expected);
     Configure::write('Asset.filter.css', false);
     $result = explode("\n", trim($this->Html->css(array('cake.generic', 'vendor.generic'))));
     $expected['link']['href'] = 'preg:/.*css\\/cake\\.generic\\.css/';
     $this->assertTags($result[0], $expected);
     $expected['link']['href'] = 'preg:/.*css\\/vendor\\.generic\\.css/';
     $this->assertTags($result[1], $expected);
     $this->assertEqual(count($result), 2);
     Configure::write('debug', 2);
     Configure::write('Asset.timestamp', true);
     Configure::write('Asset.filter.css', 'css.php');
     $result = $this->Html->css('cake.generic');
     $expected['link']['href'] = 'preg:/.*ccss\\/cake\\.generic\\.css\\?[0-9]+/';
     $this->assertTags($result, $expected);
     Configure::write('Asset.filter.css', false);
     $result = $this->Html->css('cake.generic');
     $expected['link']['href'] = 'preg:/.*css\\/cake\\.generic\\.css\\?[0-9]+/';
     $this->assertTags($result, $expected);
     Configure::write('debug', 0);
     $result = $this->Html->css('cake.generic');
     $expected['link']['href'] = 'preg:/.*css\\/cake\\.generic\\.css/';
     $this->assertTags($result, $expected);
     Configure::write('Asset.timestamp', 'force');
     $result = $this->Html->css('cake.generic');
     $expected['link']['href'] = 'preg:/.*css\\/cake\\.generic\\.css\\?[0-9]+/';
     $this->assertTags($result, $expected);
     $webroot = $this->Html->webroot;
     $this->Html->webroot = '/testing/';
     $result = $this->Html->css('cake.generic');
     $expected['link']['href'] = 'preg:/\\/testing\\/css\\/cake\\.generic\\.css\\?/';
     $this->assertTags($result, $expected);
     $this->Html->webroot = $webroot;
     $webroot = $this->Html->webroot;
     $this->Html->webroot = '/testing/longer/';
     $result = $this->Html->css('cake.generic');
     $expected['link']['href'] = 'preg:/\\/testing\\/longer\\/css\\/cake\\.generic\\.css\\?/';
     $this->assertTags($result, $expected);
     $this->Html->webroot = $webroot;
 }
Пример #6
0
 /**
  * test css() with Asset.Css.filter
  *
  * @return void
  **/
 function testCssFiltering()
 {
     $this->Html->webroot = '/';
     Configure::write('Asset.filter.css', 'css.php');
     $result = $this->Html->css('cake.generic');
     $expected = array('link' => array('rel' => 'stylesheet', 'type' => 'text/css', 'href' => 'preg:/\\/ccss\\/cake\\.generic\\.css/'));
     $this->assertTags($result, $expected);
     Configure::write('Asset.timestamp', true);
     Configure::write('Asset.filter.css', 'css.php');
     $result = $this->Html->css('cake.generic');
     $expected['link']['href'] = 'preg:/\\/ccss\\/cake\\.generic\\.css\\?[0-9]+/';
     $this->assertTags($result, $expected);
     Configure::write('Asset.timestamp', false);
     $result = $this->Html->css('myfoldercss/cake.generic');
     $expected['link']['href'] = 'preg:/\\/ccss\\/myfoldercss\\/cake\\.generic\\.css/';
     $this->assertTags($result, $expected);
     $this->Html->webroot = '/testing/longer/';
     $result = $this->Html->css('myfoldercss/cake.generic');
     $expected['link']['href'] = 'preg:/\\/testing\\/longer\\/ccss\\/myfoldercss\\/cake\\.generic\\.css/';
     $this->assertTags($result, $expected);
     Configure::write('Asset.filter.css', false);
 }
Пример #7
0
 /**
  * Resource names must be treated differently for css() and script()
  *
  * @return void
  */
 public function testBufferedCssAndScriptWithIdenticalResourceName()
 {
     $this->View->expects($this->at(0))->method('append')->with('css', $this->stringContains('test.min.css'));
     $this->View->expects($this->at(1))->method('append')->with('script', $this->stringContains('test.min.js'));
     $this->Html->css('test.min', array('inline' => false));
     $this->Html->script('test.min', array('inline' => false));
 }