<?php
/**
- * Customize
+ * Customize Manager.
*
* @package WordPress
* @subpackage Customize
* @since 3.4.0
*/
-
final class WP_Customize_Manager {
protected $theme;
protected $original_stylesheet;
add_action( 'customize_controls_enqueue_scripts', array( $this, 'enqueue_control_scripts' ) );
}
- /**
+ /**
* Return true if it's an AJAX request.
*
* @since 3.4.0
+ *
+ * @return bool
*/
public function doing_ajax() {
return isset( $_POST['customized'] ) || ( defined( 'DOING_AJAX' ) && DOING_AJAX );
* Custom wp_die wrapper. Returns either the standard message for UI
* or the AJAX message.
*
- * @param mixed $ajax_message AJAX return
- * @param mixed $message UI message
- *
* @since 3.4.0
+ *
+ * @param mixed $ajax_message AJAX return
+ * @param mixed $message UI message
*/
protected function wp_die( $ajax_message, $message = null ) {
if ( $this->doing_ajax() )
* Return the AJAX wp_die() handler if it's a customized request.
*
* @since 3.4.0
+ *
+ * @return string
*/
public function wp_die_handler() {
if ( $this->doing_ajax() )
return '_default_wp_die_handler';
}
+
/**
- * Start preview and customize theme.
- *
- * Check if customize query variable exist. Init filters to filter the current theme.
+ * Start preview and customize theme.
+ *
+ * Check if customize query variable exist. Init filters to filter the current theme.
*
* @since 3.4.0
*/
$this->start_previewing_theme();
}
+ /**
+ * Callback to validate a theme once it is loaded
+ *
+ * @since 3.4.0
+ */
function after_setup_theme() {
if ( ! $this->doing_ajax() && ! validate_current_theme() ) {
wp_redirect( 'themes.php?broken=true' );
* Instead, the JS will sniff out the location header.
*
* @since 3.4.0
+ *
+ * @param $status
+ * @return int
*/
public function wp_redirect_status( $status ) {
if ( $this->is_preview() && ! is_admin() )
* Decode the $_POST attribute used to override the WP_Customize_Setting values.
*
* @since 3.4.0
+ *
+ * @param mixed $setting A WP_Customize_Setting derived object
+ * @return string Sanitized attribute
*/
public function post_value( $setting ) {
if ( ! isset( $this->_post_values ) ) {
);
if ( 2 == $this->nonce_tick ) {
- $settings['nonce'] = array(
- 'save' => wp_create_nonce( 'save-customize_' . $this->get_stylesheet() ),
- 'preview' => wp_create_nonce( 'preview-customize_' . $this->get_stylesheet() )
- );
- }
+ $settings['nonce'] = array(
+ 'save' => wp_create_nonce( 'save-customize_' . $this->get_stylesheet() ),
+ 'preview' => wp_create_nonce( 'preview-customize_' . $this->get_stylesheet() )
+ );
+ }
foreach ( $this->settings as $id => $setting ) {
$settings['values'][ $id ] = $setting->js_value();
*
* @since 3.4.0
*
+ * @param $current_theme {@internal Parameter is not used}
* @return string Theme name.
*/
public function current_theme( $current_theme ) {
// Temporarily stop previewing the theme to allow switch_themes()
// to operate properly.
$this->stop_previewing_theme();
- switch_theme( $this->get_template(), $this->get_stylesheet() );
+ switch_theme( $this->get_stylesheet() );
$this->start_previewing_theme();
}
*
* @param object $a Object A.
* @param object $b Object B.
+ * @return int
*/
protected final function _cmp_priority( $a, $b ) {
$ap = $a->priority;
* Accepts 'blank', and otherwise uses sanitize_hex_color_no_hash().
*
* @since 3.4.0
+ *
+ * @param string $color
+ * @return string
*/
public function _sanitize_header_textcolor( $color ) {
return ( 'blank' === $color ) ? 'blank' : sanitize_hex_color_no_hash( $color );
* For validating values without a #, see sanitize_hex_color_no_hash().
*
* @since 3.4.0
+ *
+ * @param string $color
+ * @return string|null
*/
function sanitize_hex_color( $color ) {
if ( '' === $color )
* Returns either '', a 3 or 6 digit hex color (without a #), or null.
*
* @since 3.4.0
+ * @uses sanitize_hex_color()
+ *
+ * @param string $color
+ * @return string|null
*/
function sanitize_hex_color_no_hash( $color ) {
$color = ltrim( $color, '#' );
* This method should only be necessary if using sanitize_hex_color_no_hash().
*
* @since 3.4.0
+ *
+ * @param string $color
+ * @return string
*/
function maybe_hash_hex_color( $color ) {
if ( $unhashed = sanitize_hex_color_no_hash( $color ) )