Update everything

This commit is contained in:
nikolark committed 2016-05-30 11:30:55 +02:00
1 parent 5da6eca0f6
commit 404c516a94
712 files changed
+44202 -26753

No files matched your search

+289 -33
View File
@@ -1,41 +1,154 @@
<?php
/**
* BackPress Scripts enqueue.
* Dependencies API: WP_Scripts class
*
* These classes were refactored from the WordPress WP_Scripts and WordPress
* script enqueue API.
* @since 2.6.0
*
* @package BackPress
* @since r16
* @package WordPress
* @subpackage Dependencies
*/
/**
* BackPress Scripts enqueue class.
* Core class used to register scripts.
*
* @package BackPress
* @package WordPress
* @uses WP_Dependencies
* @since r16
* @since 2.1.0
*/
class WP_Scripts extends WP_Dependencies {
public $base_url; // Full URL with trailing slash
/**
* Base URL for scripts.
*
* Full URL with trailing slash.
*
* @since 2.6.0
* @access public
* @var string
*/
public $base_url;
/**
* URL of the content directory.
*
* @since 2.8.0
* @access public
* @var string
*/
public $content_url;
/**
* Default version string for stylesheets.
*
* @since 2.6.0
* @access public
* @var string
*/
public $default_version;
/**
* Holds handles of scripts which are enqueued in footer.
*
* @since 2.8.0
* @access public
* @var array
*/
public $in_footer = array();
/**
* Holds a list of script handles which will be concatenated.
*
* @since 2.8.0
* @access public
* @var string
*/
public $concat = '';
/**
* Holds a string which contains script handles and their version.
*
* @since 2.8.0
* @deprecated 3.4.0
* @access public
* @var string
*/
public $concat_version = '';
/**
* Whether to perform concatenation.
*
* @since 2.8.0
* @access public
* @var bool
*/
public $do_concat = false;
/**
* Holds HTML markup of scripts and additional data if concatenation
* is enabled.
*
* @since 2.8.0
* @access public
* @var string
*/
public $print_html = '';
/**
* Holds inline code if concatenation is enabled.
*
* @since 2.8.0
* @access public
* @var string
*/
public $print_code = '';
/**
* Holds a list of script handles which are not in the default directory
* if concatenation is enabled.
*
* Unused in core.
*
* @since 2.8.0
* @access public
* @var string
*/
public $ext_handles = '';
/**
* Holds a string which contains handles and versions of scripts which
* are not in the default directory if concatenation is enabled.
*
* Unused in core.
*
* @since 2.8.0
* @access public
* @var string
*/
public $ext_version = '';
/**
* List of default directories.
*
* @since 2.8.0
* @access public
* @var array
*/
public $default_dirs;
/**
* Constructor.
*
* @since 2.6.0
* @access public
*/
public function __construct() {
$this->init();
add_action( 'init', array( $this, 'init' ), 0 );
}
/**
* Initialize the class.
*
* @since 3.4.0
* @access public
*/
public function init() {
@@ -54,6 +167,10 @@ class WP_Scripts extends WP_Dependencies {
*
* Prints the scripts passed to it or the print queue. Also prints all necessary dependencies.
*
* @since 2.1.0
* @since 2.8.0 Added the `$group` parameter.
* @access public
*
* @param mixed $handles Optional. Scripts to be printed. (void) prints queue, (string) prints
* that script, (array of strings) prints those scripts. Default false.
* @param int $group Optional. If scripts were queued in groups prints this group number.
@@ -65,12 +182,19 @@ class WP_Scripts extends WP_Dependencies {
}
/**
* @deprecated 3.3
* Prints extra scripts of a registered script.
*
* @since 2.1.0
* @since 2.8.0 Added the `$echo` parameter.
* @deprecated 3.3.0
* @access public
*
* @see print_extra_script()
*
* @param string $handle
* @param bool $echo
* @return bool|string|void
* @param string $handle The script's registered handle.
* @param bool $echo Optional. Whether to echo the extra script instead of just returning it.
* Default true.
* @return bool|string|void Void if no data exists, extra scripts if `$echo` is true, true otherwise.
*/
public function print_scripts_l10n( $handle, $echo = true ) {
_deprecated_function( __FUNCTION__, '3.3', 'print_extra_script()' );
@@ -78,9 +202,15 @@ class WP_Scripts extends WP_Dependencies {
}
/**
* @param string $handle
* @param bool $echo
* @return bool|string|void
* Prints extra scripts of a registered script.
*
* @since 3.3.0
* @access public
*
* @param string $handle The script's registered handle.
* @param bool $echo Optional. Whether to echo the extra script instead of just returning it.
* Default true.
* @return bool|string|void Void if no data exists, extra scripts if `$echo` is true, true otherwise.
*/
public function print_extra_script( $handle, $echo = true ) {
if ( !$output = $this->get_data( $handle, 'data' ) )
@@ -99,9 +229,17 @@ class WP_Scripts extends WP_Dependencies {
}
/**
* @param string $handle Name of the item. Should be unique.
* @param int|bool $group
* @return bool True on success, false if not set.
* Processes a script dependency.
*
* @since 2.6.0
* @since 2.8.0 Added the `$group` parameter.
* @access public
*
* @see WP_Dependencies::do_item()
*
* @param string $handle The script's registered handle.
* @param int|false $group Optional. Group level: (int) level, (false) no groups. Default false.
* @return bool True on success, false on failure.
*/
public function do_item( $handle, $group = false ) {
if ( !parent::do_item($handle) )
@@ -135,6 +273,17 @@ class WP_Scripts extends WP_Dependencies {
$cond_after = "<![endif]-->\n";
}
$before_handle = $this->print_inline_script( $handle, 'before', false );
$after_handle = $this->print_inline_script( $handle, 'after', false );
if ( $before_handle ) {
$before_handle = sprintf( "<script type='text/javascript'>\n%s\n</script>\n", $before_handle );
}
if ( $after_handle ) {
$after_handle = sprintf( "<script type='text/javascript'>\n%s\n</script>\n", $after_handle );
}
if ( $this->do_concat ) {
/**
* Filter the script loader source.
@@ -145,7 +294,14 @@ class WP_Scripts extends WP_Dependencies {
* @param string $handle Script handle.
*/
$srce = apply_filters( 'script_loader_src', $src, $handle );
if ( $this->in_default_dir( $srce ) && ! $conditional ) {
if ( $this->in_default_dir( $srce ) && ( $before_handle || $after_handle ) ) {
$this->do_concat = false;
// Have to print the so-far concatenated scripts right away to maintain the right order.
_print_scripts();
$this->reset();
} elseif ( $this->in_default_dir( $srce ) && ! $conditional ) {
$this->print_code .= $this->print_extra_script( $handle, false );
$this->concat .= "$handle,";
$this->concat_version .= "$handle$ver";
@@ -168,6 +324,11 @@ class WP_Scripts extends WP_Dependencies {
echo $cond_after;
}
// A single item may alias a set of items, by having dependencies, but no source.
if ( ! $obj->src ) {
return true;
}
if ( ! preg_match( '|^(https?:)?//|', $src ) && ! ( $this->content_url && 0 === strpos( $src, $this->content_url ) ) ) {
$src = $this->base_url . $src;
}
@@ -181,7 +342,7 @@ class WP_Scripts extends WP_Dependencies {
if ( ! $src )
return true;
$tag = "{$cond_before}<script type='text/javascript' src='$src'></script>\n{$cond_after}";
$tag = "{$cond_before}{$before_handle}<script type='text/javascript' src='$src'></script>\n{$after_handle}{$cond_after}";
/**
* Filter the HTML script tag of an enqueued script.
@@ -204,7 +365,66 @@ class WP_Scripts extends WP_Dependencies {
}
/**
* Localizes a script, only if the script has already been added
* Adds extra code to a registered script.
*
* @since 4.5.0
* @access public
*
* @param string $handle Name of the script to add the inline script to. Must be lowercase.
* @param string $data String containing the javascript to be added.
* @param string $position Optional. Whether to add the inline script before the handle
* or after. Default 'after'.
* @return bool True on success, false on failure.
*/
public function add_inline_script( $handle, $data, $position = 'after' ) {
if ( ! $data ) {
return false;
}
if ( 'after' !== $position ) {
$position = 'before';
}
$script = (array) $this->get_data( $handle, $position );
$script[] = $data;
return $this->add_data( $handle, $position, $script );
}
/**
* Prints inline scripts registered for a specific handle.
*
* @since 4.5.0
* @access public
*
* @param string $handle Name of the script to add the inline script to. Must be lowercase.
* @param string $position Optional. Whether to add the inline script before the handle
* or after. Default 'after'.
* @param bool $echo Optional. Whether to echo the script instead of just returning it.
* Default true.
* @return string|false Script on success, false otherwise.
*/
public function print_inline_script( $handle, $position = 'after', $echo = true ) {
$output = $this->get_data( $handle, $position );
if ( empty( $output ) ) {
return false;
}
$output = trim( implode( "\n", $output ), "\n" );
if ( $echo ) {
printf( "<script type='text/javascript'>\n%s\n</script>\n", $output );
}
return $output;
}
/**
* Localizes a script, only if the script has already been added.
*
* @since 2.1.0
* @access public
*
* @param string $handle
* @param string $object_name
@@ -241,9 +461,16 @@ class WP_Scripts extends WP_Dependencies {
}
/**
* @param string $handle Name of the item. Should be unique.
* @param bool $recursion Internal flag that calling function was called recursively.
* @param mixed $group Group level.
* Sets handle group.
*
* @since 2.8.0
* @access public
*
* @see WP_Dependencies::set_group()
*
* @param string $handle Name of the item. Should be unique.
* @param bool $recursion Internal flag that calling function was called recursively.
* @param int|false $group Optional. Group level: (int) level, (false) no groups. Default false.
* @return bool Not already in the group or a lower group
*/
public function set_group( $handle, $recursion, $group = false ) {
@@ -259,13 +486,20 @@ class WP_Scripts extends WP_Dependencies {
}
/**
* @param mixed $handles Item handle and argument (string) or item handles and arguments (array of strings).
* @param bool $recursion Internal flag that function is calling itself.
* @param mixed $group Group level: (int) level, (false) no groups.
* Determines script dependencies.
*
* @since 2.1.0
* @access public
*
* @see WP_Dependencies::all_deps()
*
* @param mixed $handles Item handle and argument (string) or item handles and arguments (array of strings).
* @param bool $recursion Internal flag that function is calling itself.
* @param int|false $group Optional. Group level: (int) level, (false) no groups. Default false.
* @return bool True on success, false on failure.
*/
public function all_deps( $handles, $recursion = false, $group = false ) {
$r = parent::all_deps( $handles, $recursion );
$r = parent::all_deps( $handles, $recursion, $group );
if ( ! $recursion ) {
/**
* Filter the list of script dependencies left to print.
@@ -280,7 +514,14 @@ class WP_Scripts extends WP_Dependencies {
}
/**
* @return array
* Processes items and dependencies for the head group.
*
* @since 2.8.0
* @access public
*
* @see WP_Dependencies::do_items()
*
* @return array Handles of items that have been processed.
*/
public function do_head_items() {
$this->do_items(false, 0);
@@ -288,7 +529,14 @@ class WP_Scripts extends WP_Dependencies {
}
/**
* @return array
* Processes items and dependencies for the footer group.
*
* @since 2.8.0
* @access public
*
* @see WP_Dependencies::do_items()
*
* @return array Handles of items that have been processed.
*/
public function do_footer_items() {
$this->do_items(false, 1);
@@ -296,8 +544,13 @@ class WP_Scripts extends WP_Dependencies {
}
/**
* @param string $src
* @return bool
* Whether a handle's source is in a default directory.
*
* @since 2.8.0
* @access public
*
* @param string $src The source of the enqueued script.
* @return bool True if found, false if not.
*/
public function in_default_dir( $src ) {
if ( ! $this->default_dirs ) {
@@ -317,6 +570,9 @@ class WP_Scripts extends WP_Dependencies {
}
/**
* Resets class properties.
*
* @since 2.8.0
* @access public
*/
public function reset() {