WordPress/wp-content/themes/twentyfifteen/js/color-scheme-control.js
Andrew Nacin e2041b8fbb Twenty Fifteen: JSHint fixes.
* Define global variables set by wp_localize_script().
 * Remove currently unused $ variable.
 * Use dot notation when appropriate.
 * Update Gruntfile.js to ignore the html5 shiv.
see #29799.

Built from https://develop.svn.wordpress.org/trunk@29893


git-svn-id: http://core.svn.wordpress.org/trunk@29649 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-10-14 19:48:19 +00:00

50 lines
2.4 KiB
JavaScript

/* global colorScheme */
/**
* Theme Customizer enhancements for a better user experience.
*
* Adds listener to Color Scheme control to update other color controls with new values/defaults
*/
( function( wp ) {
wp.customize.controlConstructor.colorScheme = wp.customize.Control.extend( {
ready: function() {
var parentSection = this.container.closest( '.control-section' ),
headerTextColor = parentSection.find( '#customize-control-header_textcolor .color-picker-hex' ),
backgroundColor = parentSection.find( '#customize-control-background_color .color-picker-hex' ),
sidebarColor = parentSection.find( '#customize-control-header_background_color .color-picker-hex' ),
sidebarTextColor = parentSection.find( '#customize-control-sidebar_textcolor .color-picker-hex' );
this.setting.bind( 'change', function( value ) {
// if Header Text is not hidden, update value
if ( 'blank' !== wp.customize( 'header_textcolor' ).get() ) {
wp.customize( 'header_textcolor' ).set( colorScheme[value].colors[4] );
headerTextColor.val( colorScheme[value].colors[4] )
.data( 'data-default-color', colorScheme[value].colors[4] )
.wpColorPicker( 'color', colorScheme[value].colors[4] )
.wpColorPicker( 'defaultColor', colorScheme[value].colors[4] );
}
// update Background Color
wp.customize( 'background_color' ).set( colorScheme[value].colors[0] );
backgroundColor.val( colorScheme[value].colors[0] )
.data( 'data-default-color', colorScheme[value].colors[0] )
.wpColorPicker( 'color', colorScheme[value].colors[0] )
.wpColorPicker( 'defaultColor', colorScheme[value].colors[0] );
// update Header/Sidebar Background Color
wp.customize( 'header_background_color' ).set( colorScheme[value].colors[1] );
sidebarColor.val( colorScheme[value].colors[1] )
.data( 'data-default-color', colorScheme[value].colors[1] )
.wpColorPicker( 'color', colorScheme[value].colors[1] )
.wpColorPicker( 'defaultColor', colorScheme[value].colors[1] );
// update Sidebar Text Color
wp.customize( 'sidebar_textcolor' ).set( colorScheme[value].colors[4] );
sidebarTextColor.val( colorScheme[value].colors[4] )
.data( 'data-default-color', colorScheme[value].colors[4] )
.wpColorPicker( 'color', colorScheme[value].colors[4] )
.wpColorPicker( 'defaultColor', colorScheme[value].colors[4] );
} );
}
} );
} )( this.wp );