public static function addAssets(sfWebResponse $response) { $response->addStylesheet('yui/treeview/assets/skins/qubit/treeview-skin', 'first'); $response->addJavaScript('/vendor/yui/treeview/treeview-min', 'last'); $response->addJavaScript('/vendor/yui/dragdrop/dragdrop-min', 'last'); $response->addJavaScript('treeView', 'last'); }
public static function addAssets(sfWebResponse $response) { if (sfConfig::get('app_show_tooltips')) { $response->addJavaScript('description'); } else { $response->addStylesheet('hide_tooltips'); } }
protected function prepareAssetsForNativeApp(sfWebRequest $request, sfWebResponse $response, $buildSettings) { $this->isInitialRequest = !$request->isXmlHttpRequest(); foreach ($buildSettings['javascripts'] as $file) { list($filename, $position) = $this->extractFilenameAndPositionForAssetResource($file); if ($this->isInitialRequest) { $response->addJavascript($filename, $position); } else { $response->removeJavascript($filename, $position); } } foreach ($buildSettings['stylesheets'] as $file) { list($filename, $position) = $this->extractFilenameAndPositionForAssetResource($file); if ($this->isInitialRequest) { $response->addStylesheet($filename, $position); } else { $response->removeStylesheet($filename, $position); } } $excludeStylesheets = $buildSettings['excludeStylesheets']; foreach ($excludeStylesheets as $assetResource) { list($filename, $position) = $this->extractFilenameAndPositionForAssetResource($assetResource); $response->removeStylesheet($filename, $position); } $excludeJavascripts = $buildSettings['excludeJavascripts']; foreach ($excludeJavascripts as $assetResource) { list($filename, $position) = $this->extractFilenameAndPositionForAssetResource($assetResource); $response->removeJavascript($filename, $position); } $context = $this->getContext(); if (method_exists($context, 'getConfiguration') && method_exists($context->getConfiguration(), 'loadHelpers')) { $context->getConfiguration()->loadHelpers('Asset'); } else { if (method_exists('sfLoader', 'loadHelpers')) { sfLoader::loadHelpers('Asset'); //compatibility with symfony 1.0: } } sfConfig::set('symfony.asset.stylesheets_included', true); sfConfig::set('symfony.asset.javascripts_included', true); $css = ''; $js = ''; foreach (array('first', '', 'last') as $position) { $stylesheets = $response->getStylesheets($position); if (!empty($stylesheets)) { $css .= "\n/* position: {$position} */\n"; $css .= $this->getCombinedAssetsAsString($stylesheets, 'stylesheet_path'); } $javascripts = $response->getJavascripts($position); if (!empty($javascripts)) { $jsCurrent = $this->getCombinedAssetsAsString($javascripts, 'javascript_path'); $jsCurrent = str_replace(array("'<script>", "</script>'"), array("'<scr'+'ipt>", "</scr'+'ipt>'"), $jsCurrent); //hack to avoid breaking code in jQuery mobile: domain && iframe_doc.write( '<script>document.domain="' + domain + '"</script>' ); $js .= "\n/* position: {$position} */\n"; $js .= $jsCurrent; } } if ($this->isInitialRequest) { //embed everything directly into main file $css = $this->base64EncodeImages($css); $this->cssContent = $css; $this->jsContent = $js; $this->jsContent2 = 'test'; } else { $this->cssSrc = $this->getContentAsFileSrc($css, 'css'); if (!$this->cssSrc) { $this->cssContent = $css; } // $this->jsSrc = $this->getContentAsFileSrc($js, 'js'); // if (!$this->jsSrc) { // $this->jsContent = $js; // } $this->jsContent = $js; //we have to load javascripts inline because iOs Safari loads external javascripts asynchronesly and thus we could nomore rely on events like pagecreate, pageshow, pagehide dom.ready etc } }
public static function addAssets(sfWebResponse $response) { $response->addStylesheet('/vendor/imageflow/imageflow.packed.css', 'first'); $response->addJavaScript('/vendor/imageflow/imageflow.packed.js', 'last'); $response->addJavaScript('imageflow', 'last'); }
/** * Replaces response original stylesheets by optimized ones (only if stylesheet * optimization has been enabled by configuration) * * @param sfWebresponse $response */ public function replaceStylesheets(sfWebResponse $response) { if (is_null($stylesheetOptimizer = $this->getOptimizer('stylesheet'))) { return; } foreach ($stylesheetOptimizer->getAssetFiles() as $file) { $response->removeStylesheet($file); } $response->addStylesheet($stylesheetOptimizer->getOptimizedFileWebPath(), 'first'); }
$t->pass('optimizeJavascripts() can optimize js files'); } catch (RuntimeException $e) { $t->fail('optimizeJavascripts() can optimize js files'); } // optimizeStylesheets() $t->diag('optimizeStylesheets()'); $service = new npAssetsOptimizerService($dispatcher, array('stylesheet' => array('enabled' => true, 'class' => 'npOptimizerStylesheet', 'params' => array('destination' => '/css/my_optimized.css', 'files' => array('foo.css')))), $baseAssetsDir); try { $service->optimizeStylesheets(); $t->pass('optimizeStylesheets() can optimize css files'); } catch (RuntimeException $e) { $t->fail('optimizeStylesheets() can optimize css files'); } // replaceJavascripts() $t->diag('replaceJavascripts()'); $service = new npAssetsOptimizerService($dispatcher, array('javascript' => array('enabled' => true, 'class' => 'npOptimizerJavascript', 'params' => array('destination' => '/js/my_optimized.js', 'files' => array('foo.js')))), $baseAssetsDir); $response = new sfWebResponse($dispatcher, array()); $response->addJavascript('foo.js'); $service->replaceJavascripts($response); $responseJS = array_keys($response->getJavascripts()); $t->is(count($responseJS), 1, 'replaceJavascripts() replaced javascripts'); $t->is($responseJS[0], '/js/my_optimized.js', 'replaceJavascripts() replaced javascripts'); // replaceStylesheets() $t->diag('replaceStylesheets()'); $service = new npAssetsOptimizerService($dispatcher, array('stylesheet' => array('enabled' => true, 'class' => 'npOptimizerStylesheet', 'params' => array('destination' => '/css/my_optimized.css', 'files' => array('foo.css')))), $baseAssetsDir); $response = new sfWebResponse($dispatcher, array()); $response->addStylesheet('foo.css'); $service->replaceStylesheets($response); $responseCSS = array_keys($response->getStylesheets()); $t->is(count($responseCSS), 1, 'replaceStylesheets() replaced stylesheets'); $t->is($responseCSS[0], '/css/my_optimized.css', 'replaceStylesheets() replaced stylesheets');