Add upstream
This commit is contained in:
		| @@ -0,0 +1,46 @@ | ||||
| /** | ||||
|  * JS for handling the Site Logo real-time display in the Customizer preview frame. | ||||
|  */ | ||||
| ( function( $ ) { | ||||
| 	var api = wp.customize, | ||||
| 		$body, | ||||
| 		$anchor, | ||||
| 		$logo, | ||||
| 		size; | ||||
|  | ||||
| 	function cacheSelectors() { | ||||
| 		$body = $( 'body' ); | ||||
| 		$anchor = $( '.site-logo-link' ); | ||||
| 		$logo = $( '.site-logo' ); | ||||
| 		size = $logo.attr( 'data-size' ); | ||||
| 	} | ||||
|  | ||||
| 	api( 'site_logo', function( value ) { | ||||
| 		value.bind( function( newVal ) { | ||||
| 			// grab selectors the first time through | ||||
| 			if ( ! $body ) { | ||||
| 				cacheSelectors(); | ||||
| 			} | ||||
|  | ||||
| 			// Let's update our preview logo. | ||||
| 			if ( newVal && newVal.url ) { | ||||
| 				// If the source was smaller than the size required by the theme, give the biggest we've got. | ||||
| 				if ( ! newVal.sizes[ size ] ) { | ||||
| 					size = 'full'; | ||||
| 				} | ||||
|  | ||||
| 				$logo.attr( { | ||||
| 					height: newVal.sizes[ size ].height, | ||||
| 					width: newVal.sizes[ size ].width, | ||||
| 					src: newVal.sizes[ size ].url, | ||||
| 				} ); | ||||
|  | ||||
| 				$anchor.show(); | ||||
| 				$body.addClass( 'has-site-logo' ); | ||||
| 			} else { | ||||
| 				$anchor.hide(); | ||||
| 				$body.removeClass( 'has-site-logo' ); | ||||
| 			} | ||||
| 		} ); | ||||
| 	} ); | ||||
| } )( jQuery ); | ||||
		Reference in New Issue
	
	Block a user