本文整理汇总了PHP中csstidy::set_cfg方法的典型用法代码示例。如果您正苦于以下问题:PHP csstidy::set_cfg方法的具体用法?PHP csstidy::set_cfg怎么用?PHP csstidy::set_cfg使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类csstidy
的用法示例。
在下文中一共展示了csstidy::set_cfg方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: minify
public static function minify($css, $options = array())
{
$options = array_merge(array('remove_bslash' => true, 'compress_colors' => true, 'compress_font-weight' => true, 'lowercase_s' => false, 'optimise_shorthands' => 1, 'remove_last_;' => false, 'case_properties' => 1, 'sort_properties' => false, 'sort_selectors' => false, 'merge_selectors' => 2, 'discard_invalid_properties' => false, 'css_level' => 'CSS2.1', 'preserve_css' => false, 'timestamp' => false, 'template' => 'default'), $options);
set_include_path(get_include_path() . PATH_SEPARATOR . W3TC_LIB_CSSTIDY_DIR);
require_once 'class.csstidy.php';
$csstidy = new csstidy();
foreach ($options as $option => $value) {
$csstidy->set_cfg($option, $value);
}
$csstidy->load_template($options['template']);
$csstidy->parse($css);
$css = $csstidy->print->plain();
if (isset($options['currentDir']) || isset($options['prependRelativePath'])) {
require_once W3TC_LIB_MINIFY_DIR . '/Minify/CSS/UriRewriter.php';
$browsercache_id = isset($options['browserCacheId']) ? $options['browserCacheId'] : 0;
$browsercache_extensions = isset($options['browserCacheExtensions']) ? $options['browserCacheExtensions'] : array();
if (isset($options['currentDir'])) {
$document_root = isset($options['docRoot']) ? $options['docRoot'] : $_SERVER['DOCUMENT_ROOT'];
$symlinks = isset($options['symlinks']) ? $options['symlinks'] : array();
return Minify_CSS_UriRewriter::rewrite($css, $options['currentDir'], $document_root, $symlinks, $browsercache_id, $browsercache_extensions);
} else {
return Minify_CSS_UriRewriter::prepend($css, $options['prependRelativePath'], $browsercache_id, $browsercache_extensions);
}
}
return $css;
}
示例2: minifyCss
public static function minifyCss($path)
{
require_once __DIR__ . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'autoload.php';
$css = new \csstidy();
$css->set_cfg('allow_html_in_templates', false);
$css->set_cfg('compress_colors', true);
$css->set_cfg('compress_font-weight', true);
$css->set_cfg('remove_last_', true);
$css->set_cfg('remove_bslash', true);
$css->set_cfg('template', 'highest');
$css->set_cfg('preserve_css', true);
$css->set_cfg('silent', true);
$css->parse(file_get_contents($path));
return $css->print->plain();
}
示例3: firmasite_sanitize_customcss
function firmasite_sanitize_customcss($css)
{
// Sadly we cant include csstidy. WordPress Theme Directory's automatic code checking system is not accepting it.
// You have 2 option for including css checker: install jetpack and activate custom css or copy csstidy's folder to theme's functions folder from jetpack's plugin
firmasite_safecss_class();
if (class_exists('safecss') || class_exists('firmasite_safecss')) {
$csstidy = new csstidy();
if (class_exists('firmasite_safecss')) {
$csstidy->optimise = new firmasite_safecss($csstidy);
} else {
$csstidy->optimise = new safecss($csstidy);
}
$csstidy->set_cfg('remove_bslash', false);
$csstidy->set_cfg('compress_colors', false);
$csstidy->set_cfg('compress_font-weight', false);
$csstidy->set_cfg('optimise_shorthands', 0);
$csstidy->set_cfg('remove_last_;', false);
$csstidy->set_cfg('case_properties', false);
$csstidy->set_cfg('discard_invalid_properties', true);
$csstidy->set_cfg('css_level', 'CSS3.0');
$csstidy->set_cfg('preserve_css', true);
$csstidy->set_cfg('template', dirname(__FILE__) . '/csstidy/wordpress-standard.tpl');
$css = stripslashes($css);
// Some people put weird stuff in their CSS, KSES tends to be greedy
$css = str_replace('<=', '<=', $css);
// Why KSES instead of strip_tags? Who knows?
$css = wp_kses_split($prev = $css, array(), array());
$css = str_replace('>', '>', $css);
// kses replaces lone '>' with >
// Why both KSES and strip_tags? Because we just added some '>'.
$css = strip_tags($css);
$csstidy->parse($css);
$safe_css = $csstidy->print->plain();
} else {
$safe_css = $css;
}
return $safe_css;
}
示例4: minify
public static function minify($css, $options = array())
{
$options = array_merge(array('remove_bslash' => true, 'compress_colors' => true, 'compress_font-weight' => true, 'lowercase_s' => false, 'optimise_shorthands' => 1, 'remove_last_;' => false, 'case_properties' => 1, 'sort_properties' => false, 'sort_selectors' => false, 'merge_selectors' => 2, 'discard_invalid_properties' => false, 'css_level' => 'CSS2.1', 'preserve_css' => false, 'timestamp' => false, 'template' => 'default'), $options);
set_include_path(get_include_path() . PATH_SEPARATOR . W3TC_LIB_DIR . '/CSSTidy');
require_once 'class.csstidy.php';
$csstidy = new csstidy();
foreach ($options as $option => $value) {
$csstidy->set_cfg($option, $value);
}
$csstidy->load_template($options['template']);
$csstidy->parse($css);
$css = $csstidy->print->plain();
$css = Minify_CSS_UriRewriter::rewrite($css, $options);
return $css;
}
示例5: validate
/**
* Field Render Function.
* Takes the vars and validates them
*
* @since ReduxFramework 3.0.0
*/
function validate()
{
require_once dirname(__FILE__) . '/csstidy/class.csstidy.php';
$csstidy = new csstidy();
$csstidy->set_cfg('remove_bslash', false);
$csstidy->set_cfg('compress_colors', false);
$csstidy->set_cfg('compress_font-weight', false);
$csstidy->set_cfg('optimise_shorthands', 0);
$csstidy->set_cfg('remove_last_;', false);
$csstidy->set_cfg('case_properties', false);
$csstidy->set_cfg('discard_invalid_properties', true);
$csstidy->set_cfg('css_level', 'CSS3.0');
$csstidy->set_cfg('preserve_css', true);
$csstidy->set_cfg('template', dirname(__FILE__) . '/csstidy/wordpress-standard.tpl');
$css = $orig = $this->value;
$css = preg_replace('/\\\\([0-9a-fA-F]{4})/', '\\\\\\\\$1', $prev = $css);
if ($css != $prev) {
$this->warning = true;
}
// Some people put weird stuff in their CSS, KSES tends to be greedy
$css = str_replace('<=', '<=', $css);
// Why KSES instead of strip_tags? Who knows?
$css = wp_kses_split($prev = $css, array(), array());
$css = str_replace('>', '>', $css);
// kses replaces lone '>' with >
// Why both KSES and strip_tags? Because we just added some '>'.
$css = strip_tags($css);
if ($css != $prev) {
$this->warning = true;
}
$csstidy->parse($css);
$this->value = $csstidy->print->plain();
if (isset($this->warning) && $this->warning) {
$this->warning = __('Unsafe strings were found in your CSS and have been filtered out.', 'redux-framework');
}
}
示例6: test
/**
* Implements SimpleExpectation::test().
* @param $filename Filename of test file to test.
*/
function test($filename = false)
{
if ($filename) {
$this->load($filename);
}
$css = new csstidy();
$css->set_cfg($this->settings);
$css->parse($this->css);
if ($this->fullexpect) {
$this->actual = var_export($css->css, true);
} elseif (isset($css->css[41])) {
$this->actual = var_export($css->css[41], true);
} else {
$this->actual = 'Key 41 does not exist';
}
return $this->expect === $this->actual;
}
示例7: sanitize_css
public static function sanitize_css($css)
{
if (!class_exists('csstidy')) {
require_once 'class.csstidy.php';
}
$csstidy = new csstidy();
$csstidy->set_cfg('remove_bslash', FALSE);
$csstidy->set_cfg('compress_colors', FALSE);
$csstidy->set_cfg('compress_font-weight', FALSE);
$csstidy->set_cfg('discard_invalid_properties', TRUE);
$csstidy->set_cfg('merge_selectors', FALSE);
$csstidy->set_cfg('remove_last_;', FALSE);
$csstidy->set_cfg('css_level', 'CSS3.0');
$csstovalidateindiv = preg_replace('/\\\\([0-9a-fA-F]{4})/', '\\\\\\\\$1', $css);
$csstovalidateindiv = wp_kses_split($csstovalidateindiv, array(), array());
$csstidy->parse($csstovalidateindiv);
$cssvalidated = $csstidy->print->plain();
return $cssvalidated;
}
示例8: csstidy
function pixopoint_validate_css($css)
{
// SafeCSS / CSSTidy stuff
require_once 'csstidy.php';
// CSS sanitising gizmo
$csstidy = new csstidy();
$csstidy->optimise = new safecss($csstidy);
$csstidy->set_cfg('remove_bslash', false);
$csstidy->set_cfg('compress_colors', false);
$csstidy->set_cfg('compress_font-weight', false);
$csstidy->set_cfg('discard_invalid_properties', true);
$csstidy->set_cfg('merge_selectors', false);
$csstidy->set_cfg('preserve_css', true);
// Outputs code comments
// $csstidy->set_cfg( 'lowercase_s', false );
// $csstidy->set_cfg( 'optimise_shorthands', 1 );
// $csstidy->set_cfg( 'remove_last_;', false );
// $csstidy->set_cfg( 'case_properties', 1 );
// $csstidy->set_cfg( 'sort_properties', false );
// $csstidy->set_cfg( 'sort_selectors', false );
// Santisation stuff copied from SafeCSS by Automattic
$css = stripslashes($css);
$css = preg_replace('/\\\\([0-9a-fA-F]{4})/', '\\\\\\\\$1', $prev = $css);
$css = str_replace('<=', '<=', $css);
// Some people put weird stuff in their CSS, KSES tends to be greedy
$css = wp_kses_split($prev = $css, array(), array());
// Why KSES instead of strip_tags? Who knows?
$css = str_replace('>', '>', $css);
// kses replaces lone '>' with >
$css = strip_tags($css);
// Why both KSES and strip_tags? Because we just added some '>'.
// Parse with CSS tidy
$csstidy->parse($css);
// Parse with CSS Tidy
$css = $csstidy->print->plain();
// Grab CSS output
// Make CSS look pretty
$css = pixopoint_pretty_css($css);
return $css;
}
示例9: update_settings
public function update_settings()
{
global $register_plus_redux;
$options = array();
$redux_usermeta = array();
$_POST = stripslashes_deep((array) $_POST);
if (isset($_POST['custom_logo_url']) && !isset($_POST['remove_logo'])) {
$options['custom_logo_url'] = esc_url_raw((string) $_POST['custom_logo_url']);
}
$options['verify_user_email'] = isset($_POST['verify_user_email']) ? '1' : '0';
$options['message_verify_user_email'] = isset($_POST['message_verify_user_email']) ? wp_kses_post((string) $_POST['message_verify_user_email']) : '';
$options['verify_user_admin'] = isset($_POST['verify_user_admin']) ? '1' : '0';
$options['message_verify_user_admin'] = isset($_POST['message_verify_user_admin']) ? wp_kses_post((string) $_POST['message_verify_user_admin']) : '';
$options['delete_unverified_users_after'] = isset($_POST['delete_unverified_users_after']) ? absint((string) $_POST['delete_unverified_users_after']) : '0';
$options['registration_redirect_url'] = isset($_POST['registration_redirect_url']) ? esc_url_raw((string) $_POST['registration_redirect_url']) : '';
$options['verification_redirect_url'] = isset($_POST['verification_redirect_url']) ? esc_url_raw((string) $_POST['verification_redirect_url']) : '';
$options['autologin_user'] = isset($_POST['autologin_user']) ? '1' : '0';
$options['username_is_email'] = isset($_POST['username_is_email']) ? '1' : '0';
$options['double_check_email'] = isset($_POST['double_check_email']) ? '1' : '0';
if (isset($_POST['show_fields']) && is_array($_POST['show_fields'])) {
$options['show_fields'] = (array) $_POST['show_fields'];
}
if (isset($_POST['required_fields']) && is_array($_POST['required_fields'])) {
$options['required_fields'] = (array) $_POST['required_fields'];
}
$options['user_set_password'] = isset($_POST['user_set_password']) ? '1' : '0';
$options['min_password_length'] = isset($_POST['min_password_length']) ? absint($_POST['min_password_length']) : 0;
$options['disable_password_confirmation'] = isset($_POST['disable_password_confirmation']) ? '1' : '0';
$options['show_password_meter'] = isset($_POST['show_password_meter']) ? '1' : '0';
$options['message_empty_password'] = isset($_POST['message_empty_password']) ? wp_kses_data((string) $_POST['message_empty_password']) : '';
$options['message_short_password'] = isset($_POST['message_short_password']) ? wp_kses_data((string) $_POST['message_short_password']) : '';
$options['message_bad_password'] = isset($_POST['message_bad_password']) ? wp_kses_data((string) $_POST['message_bad_password']) : '';
$options['message_good_password'] = isset($_POST['message_good_password']) ? wp_kses_data((string) $_POST['message_good_password']) : '';
$options['message_strong_password'] = isset($_POST['message_strong_password']) ? wp_kses_data((string) $_POST['message_strong_password']) : '';
$options['message_mismatch_password'] = isset($_POST['message_mismatch_password']) ? wp_kses_data((string) $_POST['message_mismatch_password']) : '';
$options['enable_invitation_code'] = isset($_POST['enable_invitation_code']) ? '1' : '0';
if (isset($_POST['invitation_code_bank']) && is_array($_POST['invitation_code_bank'])) {
$invitation_code_bank = (array) $_POST['invitation_code_bank'];
}
$options['require_invitation_code'] = isset($_POST['require_invitation_code']) ? '1' : '0';
$options['invitation_code_case_sensitive'] = isset($_POST['invitation_code_case_sensitive']) ? '1' : '0';
$options['invitation_code_unique'] = isset($_POST['invitation_code_unique']) ? '1' : '0';
$options['enable_invitation_tracking_widget'] = isset($_POST['enable_invitation_tracking_widget']) ? '1' : '0';
$options['show_disclaimer'] = isset($_POST['show_disclaimer']) ? '1' : '0';
$options['message_disclaimer_title'] = isset($_POST['message_disclaimer_title']) ? sanitize_text_field((string) $_POST['message_disclaimer_title']) : '';
$options['message_disclaimer'] = isset($_POST['message_disclaimer']) ? wp_kses_post((string) $_POST['message_disclaimer']) : '';
$options['require_disclaimer_agree'] = isset($_POST['require_disclaimer_agree']) ? '1' : '0';
$options['message_disclaimer_agree'] = isset($_POST['message_disclaimer_agree']) ? sanitize_text_field((string) $_POST['message_disclaimer_agree']) : '';
$options['show_license'] = isset($_POST['show_license']) ? '1' : '0';
$options['message_license_title'] = isset($_POST['message_license_title']) ? sanitize_text_field((string) $_POST['message_license_title']) : '';
$options['message_license'] = isset($_POST['message_license']) ? wp_kses_post((string) $_POST['message_license']) : '';
$options['require_license_agree'] = isset($_POST['require_license_agree']) ? '1' : '0';
$options['message_license_agree'] = isset($_POST['message_license_agree']) ? sanitize_text_field((string) $_POST['message_license_agree']) : '';
$options['show_privacy_policy'] = isset($_POST['show_privacy_policy']) ? '1' : '0';
$options['message_privacy_policy_title'] = isset($_POST['message_privacy_policy_title']) ? sanitize_text_field((string) $_POST['message_privacy_policy_title']) : '';
$options['message_privacy_policy'] = isset($_POST['message_privacy_policy']) ? wp_kses_post((string) $_POST['message_privacy_policy']) : '';
$options['require_privacy_policy_agree'] = isset($_POST['require_privacy_policy_agree']) ? '1' : '0';
$options['message_privacy_policy_agree'] = isset($_POST['message_privacy_policy_agree']) ? sanitize_text_field((string) $_POST['message_privacy_policy_agree']) : '';
$options['default_css'] = isset($_POST['default_css']) ? '1' : '0';
$options['required_fields_style'] = '';
if (isset($_POST['required_fields_style'])) {
// Stolen from Jetpack 2.0.4 custom-css.php Jetpack_Custom_CSS::filter_attr()
require_once 'csstidy/class.csstidy.php';
$csstidy = new csstidy();
$csstidy->set_cfg('remove_bslash', FALSE);
$csstidy->set_cfg('compress_colors', FALSE);
$csstidy->set_cfg('compress_font-weight', FALSE);
$csstidy->set_cfg('discard_invalid_properties', TRUE);
$csstidy->set_cfg('merge_selectors', FALSE);
$csstidy->set_cfg('remove_last_;', FALSE);
$csstidy->set_cfg('css_level', 'CSS3.0');
$required_fields_style = 'div {' . (string) $_POST['required_fields_style'] . '}';
$required_fields_style = preg_replace('/\\\\([0-9a-fA-F]{4})/', '\\\\\\\\$1', $required_fields_style);
$required_fields_style = wp_kses_split($required_fields_style, array(), array());
$csstidy->parse($required_fields_style);
$required_fields_style = $csstidy->print->plain();
$required_fields_style = str_replace(array("\n", "\r", "\t"), '', $required_fields_style);
preg_match("/^div\\s*{(.*)}\\s*\$/", $required_fields_style, $matches);
if (!empty($matches[1])) {
$options['required_fields_style'] = $matches[1];
}
}
$options['required_fields_asterisk'] = isset($_POST['required_fields_asterisk']) ? '1' : '0';
$options['starting_tabindex'] = isset($_POST['starting_tabindex']) ? absint($_POST['starting_tabindex']) : 0;
/*
if ( isset( $_POST['datepicker_firstdayofweek'] ) ) $options['datepicker_firstdayofweek'] = absint( $_POST['datepicker_firstdayofweek'] );
if ( isset( $_POST['datepicker_dateformat'] ) ) $options['datepicker_dateformat'] = sanitize_text_field( (string) $_POST['datepicker_dateformat'] );
if ( isset( $_POST['datepicker_startdate'] ) ) $options['datepicker_startdate'] = sanitize_text_field( (string) $_POST['datepicker_startdate'] );
if ( isset( $_POST['datepicker_calyear'] ) ) $options['datepicker_calyear'] = sanitize_text_field( (string) $_POST['datepicker_calyear'] );
if ( isset( $_POST['datepicker_calmonth'] ) ) $options['datepicker_calmonth'] = sanitize_text_field( (string) $_POST['datepicker_calmonth'] );
*/
$options['disable_user_message_registered'] = isset($_POST['disable_user_message_registered']) ? '1' : '0';
$options['disable_user_message_created'] = isset($_POST['disable_user_message_created']) ? '1' : '0';
$options['custom_user_message'] = isset($_POST['custom_user_message']) ? '1' : '0';
$options['user_message_from_email'] = isset($_POST['user_message_from_email']) ? sanitize_text_field((string) $_POST['user_message_from_email']) : '';
$options['user_message_from_name'] = isset($_POST['user_message_from_name']) ? sanitize_text_field((string) $_POST['user_message_from_name']) : '';
$options['user_message_subject'] = isset($_POST['user_message_subject']) ? sanitize_text_field((string) $_POST['user_message_subject']) : '';
$options['user_message_body'] = isset($_POST['user_message_body']) ? wp_kses_post((string) $_POST['user_message_body']) : '';
$options['send_user_message_in_html'] = isset($_POST['send_user_message_in_html']) ? '1' : '0';
$options['user_message_newline_as_br'] = isset($_POST['user_message_newline_as_br']) ? '1' : '0';
//.........这里部分代码省略.........
示例10: Folder
function __process($type, $assets)
{
$path = $this->__getPath($type);
$folder = new Folder($this->paths['wwwRoot'] . $this->cachePaths[$type], true);
//check if the cached file exists
$scripts = Set::extract('/script', $assets);
$fileName = $folder->find($this->__generateFileName($scripts) . '_([0-9]{10}).' . $type);
if ($fileName) {
//take the first file...really should only be one.
$fileName = $fileName[0];
}
//make sure all the pieces that went into the packed script
//are OLDER then the packed version
if ($this->checkTs && $fileName) {
$packed_ts = filemtime($this->paths['wwwRoot'] . $this->cachePaths[$type] . DS . $fileName);
$latest_ts = 0;
foreach ($assets as $asset) {
$assetFile = $this->__findFile($asset, $type);
if (!$assetFile) {
continue;
}
$latest_ts = max($latest_ts, filemtime($assetFile));
}
//an original file is newer. need to rebuild
if ($latest_ts > $packed_ts) {
unlink($this->paths['wwwRoot'] . $this->cachePaths[$type] . DS . $fileName);
$fileName = null;
}
}
//file doesn't exist. create it.
if (!$fileName) {
$ts = time();
switch ($type) {
case 'js':
if (PHP5) {
App::import('Vendor', 'Asset.jsmin/jsmin');
}
break;
case 'css':
App::import('Vendor', 'Asset.csstidy', array('file' => 'class.csstidy.php'));
$tidy = new csstidy();
$tidy->set_cfg('preserve_css', false);
$tidy->set_cfg('ie_fix_friendly', true);
$tidy->set_cfg('optimise_shorthands', 0);
//Maintain the order of ie hacks (properties)
$tidy->set_cfg('discard_invalid_properties', false);
$tidy->load_template($this->cssCompression);
break;
}
//merge the script
$scriptBuffer = '';
foreach ($assets as $asset) {
$buffer = $this->__getFileContents($asset, $type);
$origSize = strlen($buffer);
switch ($type) {
case 'js':
//jsmin only works with PHP5
if (PHP5) {
$buffer = trim(JSMin::minify($buffer));
}
break;
case 'css':
$buffer = preg_replace('/url\\(([\\"\'])?([^\\"\']+)\\1\\)/', 'url($1' . FULL_BASE_URL . $asset['url'] . '$2$1)', $buffer);
$tidy->parse($buffer);
$buffer = $tidy->print->plain();
break;
}
$delta = 0;
if ($origSize > 0) {
$delta = strlen($buffer) / $origSize * 100;
}
$scriptBuffer .= sprintf("/* %s.%s (%d%%) */\n", $asset['script'], $type, $delta);
$scriptBuffer .= $buffer . "\n\n";
}
//write the file
$fileName = $this->__generateFileName($scripts) . '_' . $ts . '.' . $type;
$file = new File($this->paths['wwwRoot'] . $this->cachePaths[$type] . DS . $fileName);
$file->write(trim($scriptBuffer));
}
if ($type == 'css') {
//$html->css doesn't check if the file already has
//the .css extension and adds it automatically, so we need to remove it.
$fileName = str_replace('.css', '', $fileName);
}
return $fileName;
}
示例11: pfcResponse
function &loadStyles($theme = 'default', &$xml_reponse)
{
if ($xml_reponse == null) {
$xml_reponse =& new pfcResponse();
}
$c =& pfcGlobalConfig::Instance();
// do not overload the theme parameter as long as
// the ajax request do not give the correct one
// $c->theme = $theme;
$u =& pfcUserConfig::Instance();
$js = '';
//file_get_contents(dirname(__FILE__).'/client/createstylerule.js');
$js .= 'var c = $H();';
$path = $c->getFilePathFromTheme('style.css.php');
require_once dirname(__FILE__) . '/../lib/ctype/ctype.php';
// to keep compatibility for php without ctype support
require_once dirname(__FILE__) . '/../lib/csstidy-1.2/class.csstidy.php';
$css = new csstidy();
$css->set_cfg('preserve_css', false);
$css_code = '';
$t = new pfcTemplate();
$t->assignObject($u, "u");
$t->assignObject($c, "c");
if (!$c->isDefaultFile('style.css.php')) {
$t->setTemplate($c->theme_default_path . '/default/style.css.php');
$css_code .= $t->getOutput();
}
$t->setTemplate($c->getFilePathFromTheme('style.css.php'));
$css_code .= $t->getOutput();
$css->parse($css_code);
foreach ($css->css as $k => $v) {
foreach ($v as $k2 => $v2) {
$rules = '';
foreach ($v2 as $k3 => $v3) {
$rules .= $k3 . ':' . $v3 . ';';
}
$js .= "c['" . $k2 . "']='" . str_replace("\n", "", $rules) . "';\n";
}
}
$js .= "var pfccss = new pfcCSS(); var k = c.keys(); c.each(function (a) { pfccss.applyRule(a[0],a[1]); });";
$xml_reponse->script($js);
return $xml_reponse;
}
示例12: getWorkspacePath
* Compress a css file.
*
* @param {string} path The path of the file to compress
* @param {string} advanced Either advanced or standard_compression
*/
case 'compressCSS':
if (isset($_GET['path']) && isset($_POST['advanced'])) {
$path = getWorkspacePath($_GET['path']);
$css_code = file_get_contents($path);
$css = new csstidy();
$css->parse($css_code);
if ($_POST['compression'] != "standard_compression") {
$css->load_template($_POST['compression']);
}
if ($_POST['advanced']) {
$css->set_cfg('compress_colors', $_POST['color']);
$css->set_cfg('compress_font-weight', $_POST['fontw']);
$css->set_cfg('remove_last_;', $_POST['bslash']);
$css->set_cfg('remove_bslash', $_POST['last']);
}
$code = $css->print->plain();
$nFile = substr($path, 0, strrpos($path, ".css"));
$nFile = $nFile . ".min.css";
file_put_contents($nFile, $code);
echo '{"status":"success","message":"CSS tidied!"}';
} else {
echo '{"status":"error","message":"Missing Parameter!"}';
}
break;
case 'compressJS':
if (isset($_GET['path']) && isset($_POST['code'])) {
示例13: minifyCss
/**
* Yii-ified version of CSS.php of the Minify packages with fixed options
*
* @param <type> $css
*/
private function minifyCss($css)
{
Yii::import('application.extensions.csstidy.*');
require_once('class.csstidy.php');
$cssTidy = new csstidy();
$cssTidy->load_template($this->cssTidyTemplate);
foreach($this->cssTidyConfig as $k => $v)
$cssTidy->set_cfg($k, $v);
$cssTidy->parse($css);
return $cssTidy->print->plain();
}
示例14: custom_css_minify
function custom_css_minify($css)
{
if (!$css) {
return '';
}
safecss_class();
$csstidy = new csstidy();
$csstidy->optimise = new safecss($csstidy);
$csstidy->set_cfg('remove_bslash', false);
$csstidy->set_cfg('compress_colors', true);
$csstidy->set_cfg('compress_font-weight', true);
$csstidy->set_cfg('remove_last_;', true);
$csstidy->set_cfg('case_properties', true);
$csstidy->set_cfg('discard_invalid_properties', true);
$csstidy->set_cfg('css_level', 'CSS3.0');
$csstidy->set_cfg('template', 'highest');
$csstidy->parse($css);
return $csstidy->print->plain();
}
示例15: csstidy
/**
* sanitize user entered css
* as seen here: http://wordpress.stackexchange.com/questions/53970/sanitize-user-entered-css
*
* @param type $css
*/
function sanitize_css($css)
{
if (!class_exists('csstidy')) {
include_once 'csstidy/class.csstidy.php';
}
$csstidy = new csstidy();
$csstidy->set_cfg('remove_bslash', false);
$csstidy->set_cfg('compress_colors', false);
$csstidy->set_cfg('compress_font-weight', false);
$csstidy->set_cfg('discard_invalid_properties', true);
$csstidy->set_cfg('merge_selectors', false);
$csstidy->set_cfg('remove_last_;', false);
$csstidy->set_cfg('css_level', 'CSS3.0');
$css = preg_replace('/\\\\([0-9a-fA-F]{4})/', '\\\\\\\\$1', $css);
$css = wp_kses_split($css, array(), array());
$csstidy->parse($css);
return $csstidy->print->plain();
}