Plugin Directory

Changeset 782656


Ignore:
Timestamp:
10/04/2013 05:29:12 PM (12 years ago)
Author:
dmikam
Message:

FIX: added support for url(data:...) in css

File:
1 edited

Legend:

Unmodified
Added
Removed
  • async-js-and-css/trunk/functions.php

    r782601 r782656  
    3434            }
    3535
    36             var element = document.createElement("script");
    37             element.setAttribute('type','text/javascript');
    38             element.src = decodeURIComponent(script.src.replace(/\+/g, ' '));
    39 
    40             onload(element,function(){
     36
     37            if (script.src!=''){
     38                var element = document.createElement("script");
     39                element.setAttribute('type','text/javascript');
     40                element.src = decodeURIComponent(script.src.replace(/\+/g, ' '));
     41
     42                onload(element,function(){
     43                    console.log('Script loaded: '+script.name);
     44                    scriptsToLoad--;
     45                    loadedScripts.push(script.name);
     46                });
     47
     48                document.body.appendChild(element);
     49            }else{
     50                console.log('dependency wrapper loaded: '+script.name);
    4151                scriptsToLoad--;
    4252                loadedScripts.push(script.name);
    43             });
    44 
    45             document.body.appendChild(element);
     53            }
    4654        }
    4755
     
    96104            $name = $wp_scripts->queue[$i];
    97105            $script = $wp_scripts->registered[$name];
    98             if (strpos($script->src,'http')!==0){
     106            //~ var_dump($script);
     107            if ($script->src!='' && strpos($script->src,'http')!==0 && strpos($script->src,'//')!==0){
    99108                $script->src = rtrim(get_bloginfo('wpurl'),'/').'/'.ltrim($script->src,'/');
    100109            }
     
    123132                    $list[] = array(
    124133                        'name'  => $name,
    125                         'src'   => $script->src.((!empty($script->ver) && !$remove_GET_part) ? '?ver='.$script->ver : ''),
     134                        'src'   => $script->src=='' ? '' : $script->src.((!empty($script->ver) && !$remove_GET_part) ? '?ver='.$script->ver : ''),
    126135                        'deps'  => $script->deps,
    127136                        'extra' => get_script_extra($script)
     
    132141                $list[] = array(
    133142                    'name'  => $name,
    134                     'src'   => $script->src.((!empty($script->ver) && !$remove_GET_part) ? '?ver='.$script->ver : ''),
     143                    'src'   => $script->src=='' ? '' : $script->src.((!empty($script->ver) && !$remove_GET_part) ? '?ver='.$script->ver : ''),
    135144                    'extra' => get_script_extra($script)
    136145                );
     
    249258
    250259    //~ $css = preg_replace("/url\(['\"]?([^\/][^'\"\)]*)['\"]?\)/i","url('{$css_dir}/$1')",$css);
    251     $css = preg_replace("/url\(['\"]?([^\/][^'\"\)]*)['\"]?\)/i","url({$css_dir}/$1)",$css);
     260    //~ $css = preg_replace("/url\(['\"]?([^\/][^'\"\)]*)['\"]?\)/i","url({$css_dir}/$1)",$css);
     261    $css = preg_replace("/url\(['\"]?[^(data:)]([^\/][^'\"\)]*)['\"]?\)/i","url({$css_dir}/$1)",$css);
    252262
    253263    return $css;
     
    308318    if (is_string($file) && isset($wp_scripts->registered[$file])){
    309319        $file = $wp_scripts->registered[$file];
     320        unset($wp_scripts->registered[$file]->deps);
    310321    }elseif(is_string($file) && isset($wp_styles->registered[$file])){
    311322        $file = $wp_styles->registered[$file];
     323        unset($wp_styles->registered[$file]->deps);
    312324    }elseif(is_string($file)){
    313325        foreach ($wp_scripts->queue as $q){
    314326            if (strpos($wp_scripts->registered[$q]->src,$file)!==FALSE){
    315327                $file = $wp_scripts->registered[$q];
     328                unset($wp_scripts->registered[$q]->deps);
    316329                break;
    317330            }
     
    320333            if (strpos($wp_styles->registered[$q]->src,$file)!==FALSE){
    321334                $file = $wp_styles->registered[$q];
     335                unset($wp_styles->registered[$q]->deps);
    322336                break;
    323337            }
Note: See TracChangeset for help on using the changeset viewer.