49 lines
851 B
JavaScript
49 lines
851 B
JavaScript
|
/*globals wp */
|
||
|
|
||
|
/**
|
||
|
* wp.media.view.Search
|
||
|
*
|
||
|
* @class
|
||
|
* @augments wp.media.View
|
||
|
* @augments wp.Backbone.View
|
||
|
* @augments Backbone.View
|
||
|
*/
|
||
|
var View = require( './view.js' ),
|
||
|
l10n = wp.media.view.l10n,
|
||
|
Search;
|
||
|
|
||
|
Search = View.extend({
|
||
|
tagName: 'input',
|
||
|
className: 'search',
|
||
|
id: 'media-search-input',
|
||
|
|
||
|
attributes: {
|
||
|
type: 'search',
|
||
|
placeholder: l10n.search
|
||
|
},
|
||
|
|
||
|
events: {
|
||
|
'input': 'search',
|
||
|
'keyup': 'search',
|
||
|
'change': 'search',
|
||
|
'search': 'search'
|
||
|
},
|
||
|
|
||
|
/**
|
||
|
* @returns {wp.media.view.Search} Returns itself to allow chaining
|
||
|
*/
|
||
|
render: function() {
|
||
|
this.el.value = this.model.escape('search');
|
||
|
return this;
|
||
|
},
|
||
|
|
||
|
search: function( event ) {
|
||
|
if ( event.target.value ) {
|
||
|
this.model.set( 'search', event.target.value );
|
||
|
} else {
|
||
|
this.model.unset('search');
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
|
||
|
module.exports = Search;
|