X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/3f5685912e89eb3b0534acd85aa0946b1ca2bbe3..3d39054f012aefe514b3f5509e32f09fc4feda44:/wp-admin/js/media.js diff --git a/wp-admin/js/media.js b/wp-admin/js/media.js index 4818f81b..e23adebb 100644 --- a/wp-admin/js/media.js +++ b/wp-admin/js/media.js @@ -1 +1,120 @@ -var findPosts;(function(a){findPosts={open:function(d,c){var b=document.documentElement.scrollTop||a(document).scrollTop();if(d&&c){a("#affected").attr("name",d).val(c)}a("#find-posts").show().draggable({handle:"#find-posts-head"}).css({top:b+50+"px",left:"50%",marginLeft:"-250px"});a("#find-posts-input").focus().keyup(function(f){if(f.which==27){findPosts.close()}});return false},close:function(){a("#find-posts-response").html("");a("#find-posts").draggable("destroy").hide()},send:function(){var b={ps:a("#find-posts-input").val(),action:"find_posts",_ajax_nonce:a("#_ajax_nonce").val()};if(a("#find-posts-pages").is(":checked")){b.pages=1}else{b.posts=1}a.ajax({type:"POST",url:ajaxurl,data:b,success:function(c){findPosts.show(c)},error:function(c){findPosts.error(c)}})},show:function(b){if(typeof(b)=="string"){this.error({responseText:b});return}var c=wpAjax.parseAjaxResponse(b);if(c.errors){this.error({responseText:wpAjax.broken})}c=c.responses[0];a("#find-posts-response").html(c.data)},error:function(b){var c=b.statusText;if(b.responseText){c=b.responseText.replace(/<.[^<>]*?>/g,"")}if(c){a("#find-posts-response").html(c)}}};a(document).ready(function(){a("#find-posts-submit").click(function(b){if(""==a("#find-posts-response").html()){b.preventDefault()}});a("#doaction, #doaction2").click(function(b){a('select[name^="action"]').each(function(){if(a(this).val()=="attach"){b.preventDefault();findPosts.open()}})})})})(jQuery); \ No newline at end of file +/* global ajaxurl, attachMediaBoxL10n, _wpMediaGridSettings, showNotice */ + +var findPosts; +( function( $ ){ + findPosts = { + open: function( af_name, af_val ) { + var overlay = $( '.ui-find-overlay' ); + + if ( overlay.length === 0 ) { + $( 'body' ).append( '
' ); + findPosts.overlay(); + } + + overlay.show(); + + if ( af_name && af_val ) { + $( '#affected' ).attr( 'name', af_name ).val( af_val ); + } + + $( '#find-posts' ).show(); + + $('#find-posts-input').focus().keyup( function( event ){ + if ( event.which == 27 ) { + findPosts.close(); + } // close on Escape + }); + + // Pull some results up by default + findPosts.send(); + + return false; + }, + + close: function() { + $('#find-posts-response').empty(); + $('#find-posts').hide(); + $( '.ui-find-overlay' ).hide(); + }, + + overlay: function() { + $( '.ui-find-overlay' ).on( 'click', function () { + findPosts.close(); + }); + }, + + send: function() { + var post = { + ps: $( '#find-posts-input' ).val(), + action: 'find_posts', + _ajax_nonce: $('#_ajax_nonce').val() + }, + spinner = $( '.find-box-search .spinner' ); + + spinner.addClass( 'is-active' ); + + $.ajax( ajaxurl, { + type: 'POST', + data: post, + dataType: 'json' + }).always( function() { + spinner.removeClass( 'is-active' ); + }).done( function( x ) { + if ( ! x.success ) { + $( '#find-posts-response' ).text( attachMediaBoxL10n.error ); + } + + $( '#find-posts-response' ).html( x.data ); + }).fail( function() { + $( '#find-posts-response' ).text( attachMediaBoxL10n.error ); + }); + } + }; + + $( document ).ready( function() { + var settings, $mediaGridWrap = $( '#wp-media-grid' ); + + // Open up a manage media frame into the grid. + if ( $mediaGridWrap.length && window.wp && window.wp.media ) { + settings = _wpMediaGridSettings; + + window.wp.media({ + frame: 'manage', + container: $mediaGridWrap, + library: settings.queryVars + }).open(); + } + + $( '#find-posts-submit' ).click( function( event ) { + if ( ! $( '#find-posts-response input[type="radio"]:checked' ).length ) + event.preventDefault(); + }); + $( '#find-posts .find-box-search :input' ).keypress( function( event ) { + if ( 13 == event.which ) { + findPosts.send(); + return false; + } + }); + $( '#find-posts-search' ).click( findPosts.send ); + $( '#find-posts-close' ).click( findPosts.close ); + $( '#doaction, #doaction2' ).click( function( event ) { + $( 'select[name^="action"]' ).each( function() { + var optionValue = $( this ).val(); + + if ( 'attach' === optionValue ) { + event.preventDefault(); + findPosts.open(); + } else if ( 'delete' === optionValue ) { + if ( ! showNotice.warn() ) { + event.preventDefault(); + } + } + }); + }); + + // Enable whole row to be clicked + $( '.find-box-inside' ).on( 'click', 'tr', function() { + $( this ).find( '.found-radio input' ).prop( 'checked', true ); + }); + }); +})( jQuery );