Changeset 2692053
- Timestamp:
- 03/10/2022 02:31:03 PM (4 years ago)
- Location:
- media-library-organizer
- Files:
-
- 16 edited
- 1 copied
-
tags/1.4.1 (copied) (copied from media-library-organizer/trunk)
-
tags/1.4.1/assets/js/media.js (modified) (5 diffs)
-
tags/1.4.1/assets/js/min/media-min.js (modified) (1 diff)
-
tags/1.4.1/includes/class-media-library-organizer.php (modified) (1 diff)
-
tags/1.4.1/includes/global/class-media-library-organizer-filesystem.php (modified) (1 diff)
-
tags/1.4.1/includes/global/class-media-library-organizer-media.php (modified) (6 diffs)
-
tags/1.4.1/languages/media-library-organizer.pot (modified) (4 diffs)
-
tags/1.4.1/media-library-organizer.php (modified) (1 diff)
-
tags/1.4.1/readme.txt (modified) (1 diff)
-
trunk/assets/js/media.js (modified) (5 diffs)
-
trunk/assets/js/min/media-min.js (modified) (1 diff)
-
trunk/includes/class-media-library-organizer.php (modified) (1 diff)
-
trunk/includes/global/class-media-library-organizer-filesystem.php (modified) (1 diff)
-
trunk/includes/global/class-media-library-organizer-media.php (modified) (6 diffs)
-
trunk/languages/media-library-organizer.pot (modified) (4 diffs)
-
trunk/media-library-organizer.php (modified) (1 diff)
-
trunk/readme.txt (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
media-library-organizer/tags/1.4.1/assets/js/media.js
r2688245 r2692053 248 248 media_library_organizer_media.taxonomies[ taxonomy_name ].terms, 249 249 media_library_organizer_media.taxonomies[ taxonomy_name ].taxonomy.labels.all_items, 250 media_library_organizer_media.labels.unassigned 250 media_library_organizer_media.labels.unassigned, 251 media_library_organizer_media.show_attachment_count 251 252 ); 252 253 } … … 265 266 * @param string all_items_label All Terms Label e.g. "All Media Categories", translated. 266 267 * @param string unassigned_items_label Unassigned Terms Label e.g. "Unassigned", translated. 267 */ 268 function mediaLibraryOrganizerGridViewInitializeTaxonomyFilter( taxonomy_name, terms, all_items_label, unassigned_items_label ) { 268 * @param bool show_attachment_count Show Attachment Counts for each Term. 269 */ 270 function mediaLibraryOrganizerGridViewInitializeTaxonomyFilter( taxonomy_name, terms, all_items_label, unassigned_items_label, show_attachment_count ) { 269 271 270 272 ( function() { … … 297 299 props[ taxonomy_name ] = term.slug; 298 300 301 // Build label, depending on whether to include the Attachment count or not. 302 var label = term.name + ( show_attachment_count === '1' ? ' (' + term.count + ')' : '' ); 303 299 304 filters[ index ] = { 300 text: term.name + ' (' + term.count + ')',305 text: label, 301 306 302 307 // Key = WP_Query taxonomy name, which ensures that taxonomy-name=1 is sent … … 839 844 * @param string all_items_label All Terms Label e.g. "All Media Categories", translated. 840 845 * @param string unassigned_items_label Unassigned Terms Label e.g. "Unassigned", translated. 841 */ 842 function mediaLibraryOrganizerGridViewReplaceTaxonomyFilter( taxonomy_name, terms, all_items_label, unassigned_items_label ) { 846 * @param bool show_attachment_count Show Attachment Counts for each Term. 847 */ 848 function mediaLibraryOrganizerGridViewReplaceTaxonomyFilter( taxonomy_name, terms, all_items_label, unassigned_items_label, show_attachment_count ) { 843 849 844 850 ( function( $ ) { … … 850 856 851 857 // Populate MediaLibraryOrganizerTaxonomyFilter[ taxonomy_name ] class with new Terms. 852 mediaLibraryOrganizerGridViewInitializeTaxonomyFilter( taxonomy_name, terms, all_items_label, unassigned_items_label );858 mediaLibraryOrganizerGridViewInitializeTaxonomyFilter( taxonomy_name, terms, all_items_label, unassigned_items_label, show_attachment_count ); 853 859 854 860 // Render updated Filter in Toolbar. -
media-library-organizer/tags/1.4.1/assets/js/min/media-min.js
r2688245 r2692053 1 function mediaLibraryOrganizerQueryInitialize(){!function(){wp.media.query=function(e){return new wp.media.model.Attachments(null,{props:_.extend(_.defaults(e||{},{orderby:media_library_organizer_media.defaults.orderby,order:media_library_organizer_media.defaults.order}),{query:!0})})};var e=wp.media.model.Query,r;_.extend(e,{get:(r=[],function(i,a){var t={},n=e.orderby,o=e.defaultProps,d,m=!1;return delete i.query,delete i.cache,_.defaults(i,o),i.order=i.order.toUpperCase(),"DESC"!==i.order&&"ASC"!==i.order&&(i.order=o.order.toUpperCase()),_.contains(n.allowed,i.orderby)||(i.orderby=o.orderby),_.each(["include","exclude"],(function(e){i[e]&&!_.isArray(i[e])&&(i[e]=[i[e]])})),_.each(i,(function(r,i){_.isNull(r)||(t[e.propmap[i]||i]=r)})),_.defaults(t,e.defaultArgs),t.orderby=n.valuemap[i.orderby]||i.orderby,m=!1,r=[],d||(d=new e([],_.extend(a||{},{props:i,args:t})),r.push(d)),wp.media.events.trigger("mlo:grid:query",{query:d}),d})})}(jQuery,_)}function mediaLibraryOrganizerUploaderInitializeEvents(){!function($,e){void 0!==wp.Uploader&&e.extend(wp.Uploader.prototype,{init:function(){wp.media.events.trigger("mlo:grid:attachment:upload:init")},added:function(e){wp.media.events.trigger("mlo:grid:attachment:upload:added",e)},progress:function(e){wp.media.events.trigger("mlo:grid:attachment:upload:progress",e)},success:function(e){wp.media.events.trigger("mlo:grid:attachment:upload:success",e)},error:function(e){wp.media.events.trigger("mlo:grid:attachment:upload:error",e)},complete:function(){wp.media.events.trigger("mlo:grid:attachment:upload:complete")},refresh:function(){wp.media.events.trigger("mlo:grid:attachment:upload:refresh")}})}(jQuery,_)}function mediaLibraryOrganizerGridViewInitializeTaxonomyFilters(){!function(){for(let e in media_library_organizer_media.taxonomies)mediaLibraryOrganizerGridViewInitializeTaxonomyFilter(e,media_library_organizer_media.taxonomies[e].terms,media_library_organizer_media.taxonomies[e].taxonomy.labels.all_items,media_library_organizer_media.labels.unassigned )}(jQuery,_)}function mediaLibraryOrganizerGridViewInitializeTaxonomyFilter(e,r,i,a){jQuery,_,"0"!=media_library_organizer_media.settings[e+"_enabled"]&&media_library_organizer_media.settings[e+"_enabled"]&&(MediaLibraryOrganizerTaxonomyFilter[e]=wp.media.view.AttachmentFilters.extend({id:"media-attachment-taxonomy-filter-"+e,createFilters:function(){var t={},n,n;_.each(r||{},(function(r,i){var a={};a[e]=r.slug,t[i]={text:r.name+" ("+r.count+")",props:a}})),(n={})[e]="",t.all={text:i,props:n,priority:10},(n={})[e]="-1",t.unassigned={text:a,props:n,priority:10},this.filters=t},change:function(){var r=this.filters[this.el.value];r&&(this.model.set(r.props),wp.media.events.trigger("mlo:grid:filter:change:term",{taxonomy_name:e,slug:r.props[e]}))},select:function(){var e=this.model,r="all",i=e.toJSON();wp.media.events.trigger("mlo:grid:filter:select",{props:i}),_.find(this.filters,(function(e,a){var t;if(_.all(e.props,(function(e,r){return e===(_.isUndefined(i[r])?null:i[r])})))return r=a})),this.$el.val(r)}}))}function mediaLibraryOrganizerGridViewInitializeOrderByFilter(){jQuery,_,1==media_library_organizer_media.settings.orderby_enabled&&(MediaLibraryOrganizerTaxonomyOrderBy=wp.media.view.AttachmentFilters.extend({id:"media-attachment-orderby",createFilters:function(){var e={};_.each(media_library_organizer_media.orderby||{},(function(r,i){e[i]={text:r,props:{orderby:i}}})),this.filters=e},select:function(){var e=this.model,r="all",i=e.toJSON();_.find(this.filters,(function(e,a){var t;if(_.all(e.props,(function(e,r){return e===(_.isUndefined(i[r])?null:i[r])})))return r=a})),this.$el.val(r)}}))}function mediaLibraryOrganizerGridViewInitializeOrderFilter(){jQuery,_,1==media_library_organizer_media.settings.order_enabled&&(MediaLibraryOrganizerTaxonomyOrder=wp.media.view.AttachmentFilters.extend({id:"media-attachment-order",createFilters:function(){var e={};_.each(media_library_organizer_media.order||{},(function(r,i){e[i]={text:r,props:{order:i}}})),this.filters=e},select:function(){var e=this.model,r="all",i=e.toJSON();_.find(this.filters,(function(e,a){var t;if(_.all(e.props,(function(e,r){return e===(_.isUndefined(i[r])?null:i[r])})))return r=a})),this.$el.val(r)}}))}function mediaLibraryOrganizerGridViewAddFiltersToToolbar(){var e;jQuery,_,e=wp.media.view.AttachmentsBrowser,wp.media.view.AttachmentsBrowser=wp.media.view.AttachmentsBrowser.extend({createToolbar:function(){e.prototype.createToolbar.call(this);var r=-75;for(let e in MediaLibraryOrganizerTaxonomyFilter)this.toolbar.set(e,new MediaLibraryOrganizerTaxonomyFilter[e]({controller:this.controller,model:this.collection.props,priority:r}).render()),r++;1==media_library_organizer_media.settings.orderby_enabled&&(this.toolbar.set("MediaLibraryOrganizerTaxonomyOrderBy",new MediaLibraryOrganizerTaxonomyOrderBy({controller:this.controller,model:this.collection.props,priority:r}).render()),r++),1==media_library_organizer_media.settings.order_enabled&&(this.toolbar.set("MediaLibraryOrganizerTaxonomyOrder",new MediaLibraryOrganizerTaxonomyOrder({controller:this.controller,model:this.collection.props,priority:r}).render()),r++),wp.media.events.trigger("mlo:grid:filters:add",{attachments_browser:this,priority:r}),this.controller.on("select:activate",(function(){wp.media.events.trigger("mlo:grid:bulk_select:enabled")})),this.controller.on("select:deactivate",(function(){wp.media.events.trigger("mlo:grid:bulk_select:disabled")})),this.controller.on("selection:action:done",(function(){wp.media.events.trigger("mlo:grid:attachments:bulk_actions:done")})),MediaLibraryOrganizerAttachmentsBrowser=this},createAttachmentsHeading:function(){e.prototype.createAttachmentsHeading.call(this)}})}function mediaLibraryOrganizerGridViewInitializeEditAttachmentListeners(){!function($,e){var r;$("body").on("click","table.compat-attachment-fields a.taxonomy-add-new",(function(e){e.preventDefault(),mediaLibraryOrganizerEditAttachmentToggleTaxonomyTermForm($(this).data("taxonomy"))})),$("body").on("click","table.compat-attachment-fields div.mlo-taxonomy-term-add-fields input[type=button]",(function(e){e.preventDefault(),mediaLibraryOrganizerEditAttachmentAddTerm($(this).data("taxonomy"),$("input[type=text]",$(this).parent()).val())})),e.extend(wp.media.view.Attachment.prototype,{updateSave:function(e){var i=this._save=this._save||{status:"ready"};return e&&e!==i.status&&(this.$el.removeClass("save-"+i.status),i.status=e),this.$el.addClass("save-"+i.status),"waiting"!=r||"ready"!=i.status&&"complete"!=i.status||wp.media.events.trigger("mlo:grid:edit-attachment:edited",{attachment_id:this.model.id,attachment:this.model.attributes,changed:this.model.changed,taxonomy_term_changed:void 0!==this.model.changed.compat}),r=i.status,this}}),e.extend(wp.media.view.Attachment.Details.prototype,{moveFocus:function(){wp.media.events.trigger("mlo:grid:edit-attachment:deleted"),this.previousAttachment.length?this.previousAttachment.focus():this.nextAttachment.length?this.nextAttachment.focus():this.controller.uploader&&this.controller.uploader.$browser?this.controller.uploader.$browser.focus():this.moveFocusToLastFallback()}})}(jQuery,_)}function mediaLibraryOrganizerGridViewReplaceTaxonomyFilter(e,r,i,a){var $;$=jQuery,MediaLibraryOrganizerTaxonomyFilter.hasOwnProperty(e)&&(mediaLibraryOrganizerGridViewInitializeTaxonomyFilter(e,r,i,a),MediaLibraryOrganizerAttachmentsBrowser.toolbar.set(e,new MediaLibraryOrganizerTaxonomyFilter[e]({controller:MediaLibraryOrganizerAttachmentsBrowser.controller,model:MediaLibraryOrganizerAttachmentsBrowser.collection.props,priority:-75}).render()))}function mediaLibraryOrganizerGridViewUpdateTaxonomyFilters(){var $;($=jQuery).post(media_library_organizer_media.ajaxurl,{action:media_library_organizer_media.get_taxonomies_terms.action,nonce:media_library_organizer_media.get_taxonomies_terms.nonce},(function(e){if(e.success)for(let r in e.data)mediaLibraryOrganizerGridViewReplaceTaxonomyFilter(e.data[r].taxonomy.name,e.data[r].terms,e.data[r].taxonomy.labels.all_items,media_library_organizer_media.labels.unassigned);else alert(e.data)}))}function mediaLibraryOrganizerGridViewUpdateTaxonomyFilter(e){var $;($=jQuery).post(media_library_organizer_media.ajaxurl,{action:media_library_organizer_media.get_taxonomy_terms.action,nonce:media_library_organizer_media.get_taxonomy_terms.nonce,taxonomy_name:e},(function(e){e.success?mediaLibraryOrganizerGridViewReplaceTaxonomyFilter(e.data.taxonomy.name,e.data.terms,e.data.taxonomy.labels.all_items,media_library_organizer_media.labels.unassigned):alert(e.data)}))}function mediaLibraryOrganizerListViewReplaceTaxonomyFilter(e,r,i){var $;($=jQuery)("select#"+e).replaceWith(r),i.length>0&&$("select#"+e).val(i)}function mediaLibraryOrganizerListViewUpdateAttachmentTerms(e,r,i){var $;($=jQuery)("td.taxonomy-"+e+" a").each((function(){$(this).text()==r.name&&(i?($(this).text(i.name),$(this).attr("href","upload.php?taxonomy="+e+"&term="+i.slug)):$(this).remove())})),$("td.taxonomy-"+e).each((function(){$(this).html($(this).html().replace(/(^\s*,)|(,\s*$)/g,""))}))}function mediaLibraryOrganizerEditAttachmentToggleTaxonomyTermForm(e){var $;($=jQuery)(".mlo-taxonomy-term-add-fields."+e).hasClass("hidden")?$(".mlo-taxonomy-term-add-fields."+e).removeClass("hidden"):$(".mlo-taxonomy-term-add-fields."+e).addClass("hidden")}function mediaLibraryOrganizerEditAttachmentResetTaxonomyTermForm(e){var $;($=jQuery)(".mlo-taxonomy-term-add-fields."+e+"input[type=text]").val("")}function mediaLibraryOrganizerEditAttachmentAddTerm(e,r,i){var $,a;$=jQuery,a={action:media_library_organizer_media.create_term.action,nonce:media_library_organizer_media.create_term.nonce,taxonomy_name:e,term_name:r,term_parent_id:i},$.post(media_library_organizer_media.ajaxurl,a,(function(r){r.success?(wp.media.events.trigger("mlo:grid:edit-attachment:added:term",r.data),$("ul#"+r.data.term.taxonomy+"checklist").prepend(r.data.checkbox),mediaLibraryOrganizerEditAttachmentResetTaxonomyTermForm(e),$("ul#"+r.data.term.taxonomy+'checklist li:first input[type="checkbox"]').trigger("change")):alert(r.data)}))}function mediaLibraryOrganizerGridViewRefresh(){void 0!==wp.media.frame.library?wp.media.frame.library.props.set({ignore:+new Date}):wp.media.frame.content.get().collection.props.set({ignore:+new Date})}function mediaLibraryOrganizerInitialize(){mediaLibraryOrganizerQueryInitialize(),mediaLibraryOrganizerUploaderInitializeEvents(),mediaLibraryOrganizerGridViewInitializeTaxonomyFilters(),mediaLibraryOrganizerGridViewInitializeOrderByFilter(),mediaLibraryOrganizerGridViewInitializeOrderFilter(),mediaLibraryOrganizerGridViewAddFiltersToToolbar(),mediaLibraryOrganizerGridViewInitializeEditAttachmentListeners(),jQuery(document).ready((function($){"undefined"!=typeof mediaLibraryOrganizerSelectizeInit&&mediaLibraryOrganizerSelectizeInit()}))}var mediaLibraryOrganizerUploader=!1,MediaLibraryOrganizerTaxonomyFilter={},MediaLibraryOrganizerTaxonomyOrderBy,MediaLibraryOrganizerTaxonomyOrder,MediaLibraryOrganizerAttachmentsBrowser;wp.media.events.on("mlo:grid:attachment:upload:init",(function(){if(mediaLibraryOrganizerUploader||void 0===wp.media.frame.uploader||(mediaLibraryOrganizerUploader=wp.media.frame.uploader),mediaLibraryOrganizerUploader){var e={};for(let r in media_library_organizer_media.taxonomies)e[r]=media_library_organizer_media.taxonomies[r].selected_term;mediaLibraryOrganizerUploader.uploader.uploader.settings.multipart_params.media_library_organizer=e}})),wp.media.events.on("mlo:grid:filter:change:term",(function(e){mediaLibraryOrganizerUploader&&(mediaLibraryOrganizerUploader.uploader.uploader.settings.multipart_params.media_library_organizer[e.taxonomy_name]=e.slug)})),wp.media.events.on("mlo:grid:attachment:upload:success",(function(e){mediaLibraryOrganizerGridViewRefresh()})),wp.media.events.on("mlo:grid:edit-attachment:added:term",(function(e){mediaLibraryOrganizerGridViewReplaceTaxonomyFilter(e.taxonomy.name,e.terms,e.taxonomy.labels.all_items,media_library_organizer_media.labels.unassigned)})),wp.media.events.on("mlo:grid:edit-attachment:edited",(function(e){var $;$=jQuery,e.taxonomy_term_changed&&(mediaLibraryOrganizerGridViewUpdateTaxonomyFilters(),mediaLibraryOrganizerGridViewRefresh())})),wp.media.events.on("mlo:grid:edit-attachment:deleted",(function(e){mediaLibraryOrganizerGridViewUpdateTaxonomyFilters()})),wp.media.events.on("mlo:grid:bulk_select:disabled",(function(){mediaLibraryOrganizerGridViewUpdateTaxonomyFilters()})),mediaLibraryOrganizerInitialize();1 function mediaLibraryOrganizerQueryInitialize(){!function(){wp.media.query=function(e){return new wp.media.model.Attachments(null,{props:_.extend(_.defaults(e||{},{orderby:media_library_organizer_media.defaults.orderby,order:media_library_organizer_media.defaults.order}),{query:!0})})};var e=wp.media.model.Query,r;_.extend(e,{get:(r=[],function(i,a){var t={},n=e.orderby,o=e.defaultProps,d,m=!1;return delete i.query,delete i.cache,_.defaults(i,o),i.order=i.order.toUpperCase(),"DESC"!==i.order&&"ASC"!==i.order&&(i.order=o.order.toUpperCase()),_.contains(n.allowed,i.orderby)||(i.orderby=o.orderby),_.each(["include","exclude"],(function(e){i[e]&&!_.isArray(i[e])&&(i[e]=[i[e]])})),_.each(i,(function(r,i){_.isNull(r)||(t[e.propmap[i]||i]=r)})),_.defaults(t,e.defaultArgs),t.orderby=n.valuemap[i.orderby]||i.orderby,m=!1,r=[],d||(d=new e([],_.extend(a||{},{props:i,args:t})),r.push(d)),wp.media.events.trigger("mlo:grid:query",{query:d}),d})})}(jQuery,_)}function mediaLibraryOrganizerUploaderInitializeEvents(){!function($,e){void 0!==wp.Uploader&&e.extend(wp.Uploader.prototype,{init:function(){wp.media.events.trigger("mlo:grid:attachment:upload:init")},added:function(e){wp.media.events.trigger("mlo:grid:attachment:upload:added",e)},progress:function(e){wp.media.events.trigger("mlo:grid:attachment:upload:progress",e)},success:function(e){wp.media.events.trigger("mlo:grid:attachment:upload:success",e)},error:function(e){wp.media.events.trigger("mlo:grid:attachment:upload:error",e)},complete:function(){wp.media.events.trigger("mlo:grid:attachment:upload:complete")},refresh:function(){wp.media.events.trigger("mlo:grid:attachment:upload:refresh")}})}(jQuery,_)}function mediaLibraryOrganizerGridViewInitializeTaxonomyFilters(){!function(){for(let e in media_library_organizer_media.taxonomies)mediaLibraryOrganizerGridViewInitializeTaxonomyFilter(e,media_library_organizer_media.taxonomies[e].terms,media_library_organizer_media.taxonomies[e].taxonomy.labels.all_items,media_library_organizer_media.labels.unassigned,media_library_organizer_media.show_attachment_count)}(jQuery,_)}function mediaLibraryOrganizerGridViewInitializeTaxonomyFilter(e,r,i,a,t){jQuery,_,"0"!=media_library_organizer_media.settings[e+"_enabled"]&&media_library_organizer_media.settings[e+"_enabled"]&&(MediaLibraryOrganizerTaxonomyFilter[e]=wp.media.view.AttachmentFilters.extend({id:"media-attachment-taxonomy-filter-"+e,createFilters:function(){var n={},o,o;_.each(r||{},(function(r,i){var a={};a[e]=r.slug;var o=r.name+("1"===t?" ("+r.count+")":"");n[i]={text:o,props:a}})),(o={})[e]="",n.all={text:i,props:o,priority:10},(o={})[e]="-1",n.unassigned={text:a,props:o,priority:10},this.filters=n},change:function(){var r=this.filters[this.el.value];r&&(this.model.set(r.props),wp.media.events.trigger("mlo:grid:filter:change:term",{taxonomy_name:e,slug:r.props[e]}))},select:function(){var e=this.model,r="all",i=e.toJSON();wp.media.events.trigger("mlo:grid:filter:select",{props:i}),_.find(this.filters,(function(e,a){var t;if(_.all(e.props,(function(e,r){return e===(_.isUndefined(i[r])?null:i[r])})))return r=a})),this.$el.val(r)}}))}function mediaLibraryOrganizerGridViewInitializeOrderByFilter(){jQuery,_,1==media_library_organizer_media.settings.orderby_enabled&&(MediaLibraryOrganizerTaxonomyOrderBy=wp.media.view.AttachmentFilters.extend({id:"media-attachment-orderby",createFilters:function(){var e={};_.each(media_library_organizer_media.orderby||{},(function(r,i){e[i]={text:r,props:{orderby:i}}})),this.filters=e},select:function(){var e=this.model,r="all",i=e.toJSON();_.find(this.filters,(function(e,a){var t;if(_.all(e.props,(function(e,r){return e===(_.isUndefined(i[r])?null:i[r])})))return r=a})),this.$el.val(r)}}))}function mediaLibraryOrganizerGridViewInitializeOrderFilter(){jQuery,_,1==media_library_organizer_media.settings.order_enabled&&(MediaLibraryOrganizerTaxonomyOrder=wp.media.view.AttachmentFilters.extend({id:"media-attachment-order",createFilters:function(){var e={};_.each(media_library_organizer_media.order||{},(function(r,i){e[i]={text:r,props:{order:i}}})),this.filters=e},select:function(){var e=this.model,r="all",i=e.toJSON();_.find(this.filters,(function(e,a){var t;if(_.all(e.props,(function(e,r){return e===(_.isUndefined(i[r])?null:i[r])})))return r=a})),this.$el.val(r)}}))}function mediaLibraryOrganizerGridViewAddFiltersToToolbar(){var e;jQuery,_,e=wp.media.view.AttachmentsBrowser,wp.media.view.AttachmentsBrowser=wp.media.view.AttachmentsBrowser.extend({createToolbar:function(){e.prototype.createToolbar.call(this);var r=-75;for(let e in MediaLibraryOrganizerTaxonomyFilter)this.toolbar.set(e,new MediaLibraryOrganizerTaxonomyFilter[e]({controller:this.controller,model:this.collection.props,priority:r}).render()),r++;1==media_library_organizer_media.settings.orderby_enabled&&(this.toolbar.set("MediaLibraryOrganizerTaxonomyOrderBy",new MediaLibraryOrganizerTaxonomyOrderBy({controller:this.controller,model:this.collection.props,priority:r}).render()),r++),1==media_library_organizer_media.settings.order_enabled&&(this.toolbar.set("MediaLibraryOrganizerTaxonomyOrder",new MediaLibraryOrganizerTaxonomyOrder({controller:this.controller,model:this.collection.props,priority:r}).render()),r++),wp.media.events.trigger("mlo:grid:filters:add",{attachments_browser:this,priority:r}),this.controller.on("select:activate",(function(){wp.media.events.trigger("mlo:grid:bulk_select:enabled")})),this.controller.on("select:deactivate",(function(){wp.media.events.trigger("mlo:grid:bulk_select:disabled")})),this.controller.on("selection:action:done",(function(){wp.media.events.trigger("mlo:grid:attachments:bulk_actions:done")})),MediaLibraryOrganizerAttachmentsBrowser=this},createAttachmentsHeading:function(){e.prototype.createAttachmentsHeading.call(this)}})}function mediaLibraryOrganizerGridViewInitializeEditAttachmentListeners(){!function($,e){var r;$("body").on("click","table.compat-attachment-fields a.taxonomy-add-new",(function(e){e.preventDefault(),mediaLibraryOrganizerEditAttachmentToggleTaxonomyTermForm($(this).data("taxonomy"))})),$("body").on("click","table.compat-attachment-fields div.mlo-taxonomy-term-add-fields input[type=button]",(function(e){e.preventDefault(),mediaLibraryOrganizerEditAttachmentAddTerm($(this).data("taxonomy"),$("input[type=text]",$(this).parent()).val())})),e.extend(wp.media.view.Attachment.prototype,{updateSave:function(e){var i=this._save=this._save||{status:"ready"};return e&&e!==i.status&&(this.$el.removeClass("save-"+i.status),i.status=e),this.$el.addClass("save-"+i.status),"waiting"!=r||"ready"!=i.status&&"complete"!=i.status||wp.media.events.trigger("mlo:grid:edit-attachment:edited",{attachment_id:this.model.id,attachment:this.model.attributes,changed:this.model.changed,taxonomy_term_changed:void 0!==this.model.changed.compat}),r=i.status,this}}),e.extend(wp.media.view.Attachment.Details.prototype,{moveFocus:function(){wp.media.events.trigger("mlo:grid:edit-attachment:deleted"),this.previousAttachment.length?this.previousAttachment.focus():this.nextAttachment.length?this.nextAttachment.focus():this.controller.uploader&&this.controller.uploader.$browser?this.controller.uploader.$browser.focus():this.moveFocusToLastFallback()}})}(jQuery,_)}function mediaLibraryOrganizerGridViewReplaceTaxonomyFilter(e,r,i,a,t){var $;$=jQuery,MediaLibraryOrganizerTaxonomyFilter.hasOwnProperty(e)&&(mediaLibraryOrganizerGridViewInitializeTaxonomyFilter(e,r,i,a,t),MediaLibraryOrganizerAttachmentsBrowser.toolbar.set(e,new MediaLibraryOrganizerTaxonomyFilter[e]({controller:MediaLibraryOrganizerAttachmentsBrowser.controller,model:MediaLibraryOrganizerAttachmentsBrowser.collection.props,priority:-75}).render()))}function mediaLibraryOrganizerGridViewUpdateTaxonomyFilters(){var $;($=jQuery).post(media_library_organizer_media.ajaxurl,{action:media_library_organizer_media.get_taxonomies_terms.action,nonce:media_library_organizer_media.get_taxonomies_terms.nonce},(function(e){if(e.success)for(let r in e.data)mediaLibraryOrganizerGridViewReplaceTaxonomyFilter(e.data[r].taxonomy.name,e.data[r].terms,e.data[r].taxonomy.labels.all_items,media_library_organizer_media.labels.unassigned);else alert(e.data)}))}function mediaLibraryOrganizerGridViewUpdateTaxonomyFilter(e){var $;($=jQuery).post(media_library_organizer_media.ajaxurl,{action:media_library_organizer_media.get_taxonomy_terms.action,nonce:media_library_organizer_media.get_taxonomy_terms.nonce,taxonomy_name:e},(function(e){e.success?mediaLibraryOrganizerGridViewReplaceTaxonomyFilter(e.data.taxonomy.name,e.data.terms,e.data.taxonomy.labels.all_items,media_library_organizer_media.labels.unassigned):alert(e.data)}))}function mediaLibraryOrganizerListViewReplaceTaxonomyFilter(e,r,i){var $;($=jQuery)("select#"+e).replaceWith(r),i.length>0&&$("select#"+e).val(i)}function mediaLibraryOrganizerListViewUpdateAttachmentTerms(e,r,i){var $;($=jQuery)("td.taxonomy-"+e+" a").each((function(){$(this).text()==r.name&&(i?($(this).text(i.name),$(this).attr("href","upload.php?taxonomy="+e+"&term="+i.slug)):$(this).remove())})),$("td.taxonomy-"+e).each((function(){$(this).html($(this).html().replace(/(^\s*,)|(,\s*$)/g,""))}))}function mediaLibraryOrganizerEditAttachmentToggleTaxonomyTermForm(e){var $;($=jQuery)(".mlo-taxonomy-term-add-fields."+e).hasClass("hidden")?$(".mlo-taxonomy-term-add-fields."+e).removeClass("hidden"):$(".mlo-taxonomy-term-add-fields."+e).addClass("hidden")}function mediaLibraryOrganizerEditAttachmentResetTaxonomyTermForm(e){var $;($=jQuery)(".mlo-taxonomy-term-add-fields."+e+"input[type=text]").val("")}function mediaLibraryOrganizerEditAttachmentAddTerm(e,r,i){var $,a;$=jQuery,a={action:media_library_organizer_media.create_term.action,nonce:media_library_organizer_media.create_term.nonce,taxonomy_name:e,term_name:r,term_parent_id:i},$.post(media_library_organizer_media.ajaxurl,a,(function(r){r.success?(wp.media.events.trigger("mlo:grid:edit-attachment:added:term",r.data),$("ul#"+r.data.term.taxonomy+"checklist").prepend(r.data.checkbox),mediaLibraryOrganizerEditAttachmentResetTaxonomyTermForm(e),$("ul#"+r.data.term.taxonomy+'checklist li:first input[type="checkbox"]').trigger("change")):alert(r.data)}))}function mediaLibraryOrganizerGridViewRefresh(){void 0!==wp.media.frame.library?wp.media.frame.library.props.set({ignore:+new Date}):wp.media.frame.content.get().collection.props.set({ignore:+new Date})}function mediaLibraryOrganizerInitialize(){mediaLibraryOrganizerQueryInitialize(),mediaLibraryOrganizerUploaderInitializeEvents(),mediaLibraryOrganizerGridViewInitializeTaxonomyFilters(),mediaLibraryOrganizerGridViewInitializeOrderByFilter(),mediaLibraryOrganizerGridViewInitializeOrderFilter(),mediaLibraryOrganizerGridViewAddFiltersToToolbar(),mediaLibraryOrganizerGridViewInitializeEditAttachmentListeners(),jQuery(document).ready((function($){"undefined"!=typeof mediaLibraryOrganizerSelectizeInit&&mediaLibraryOrganizerSelectizeInit()}))}var mediaLibraryOrganizerUploader=!1,MediaLibraryOrganizerTaxonomyFilter={},MediaLibraryOrganizerTaxonomyOrderBy,MediaLibraryOrganizerTaxonomyOrder,MediaLibraryOrganizerAttachmentsBrowser;wp.media.events.on("mlo:grid:attachment:upload:init",(function(){if(mediaLibraryOrganizerUploader||void 0===wp.media.frame.uploader||(mediaLibraryOrganizerUploader=wp.media.frame.uploader),mediaLibraryOrganizerUploader){var e={};for(let r in media_library_organizer_media.taxonomies)e[r]=media_library_organizer_media.taxonomies[r].selected_term;mediaLibraryOrganizerUploader.uploader.uploader.settings.multipart_params.media_library_organizer=e}})),wp.media.events.on("mlo:grid:filter:change:term",(function(e){mediaLibraryOrganizerUploader&&(mediaLibraryOrganizerUploader.uploader.uploader.settings.multipart_params.media_library_organizer[e.taxonomy_name]=e.slug)})),wp.media.events.on("mlo:grid:attachment:upload:success",(function(e){mediaLibraryOrganizerGridViewRefresh()})),wp.media.events.on("mlo:grid:edit-attachment:added:term",(function(e){mediaLibraryOrganizerGridViewReplaceTaxonomyFilter(e.taxonomy.name,e.terms,e.taxonomy.labels.all_items,media_library_organizer_media.labels.unassigned)})),wp.media.events.on("mlo:grid:edit-attachment:edited",(function(e){var $;$=jQuery,e.taxonomy_term_changed&&(mediaLibraryOrganizerGridViewUpdateTaxonomyFilters(),mediaLibraryOrganizerGridViewRefresh())})),wp.media.events.on("mlo:grid:edit-attachment:deleted",(function(e){mediaLibraryOrganizerGridViewUpdateTaxonomyFilters()})),wp.media.events.on("mlo:grid:bulk_select:disabled",(function(){mediaLibraryOrganizerGridViewUpdateTaxonomyFilters()})),mediaLibraryOrganizerInitialize(); -
media-library-organizer/tags/1.4.1/includes/class-media-library-organizer.php
r2688245 r2692053 64 64 $this->plugin->displayName = 'Media Library Organizer'; 65 65 $this->plugin->author_name = 'Media Library Organizer'; 66 $this->plugin->version = '1.4. 0';67 $this->plugin->buildDate = '2022-0 2-2518:00:00';66 $this->plugin->version = '1.4.1'; 67 $this->plugin->buildDate = '2022-03-10 18:00:00'; 68 68 $this->plugin->requires = '5.0'; 69 69 $this->plugin->tested = '5.9.1'; -
media-library-organizer/tags/1.4.1/includes/global/class-media-library-organizer-filesystem.php
r2688245 r2692053 135 135 'media_library_organizer_common_get_tmp_folder', 136 136 sprintf( 137 /* translators: Folder name */137 /* translators: Folder path and name */ 138 138 __( 'Could not create temporary folder at %s', 'media-library-organizer' ), 139 139 $temporary_folder -
media-library-organizer/tags/1.4.1/includes/global/class-media-library-organizer-media.php
r2688245 r2692053 297 297 'media_library_organizer_media', 298 298 array( 299 'order' => $this->base->get_class( 'common' )->get_order_options(), 300 'orderby' => $this->base->get_class( 'common' )->get_orderby_options(), 301 'settings' => $this->base->get_class( 'settings' )->get_settings( 'general' ), 302 'taxonomies' => $taxonomies, 299 'order' => $this->base->get_class( 'common' )->get_order_options(), 300 'orderby' => $this->base->get_class( 'common' )->get_orderby_options(), 301 'settings' => $this->base->get_class( 'settings' )->get_settings( 'general' ), 302 'taxonomies' => $taxonomies, 303 'show_attachment_count' => $this->show_attachment_count(), 303 304 304 305 // Default Values for orderby and order, based on either the User Defaults or the Plugin / WordPress Defaults. 305 'defaults' => array(306 'defaults' => array( 306 307 'orderby' => ( 307 308 $this->base->get_class( 'settings' )->get_setting( 'user-options', 'orderby_enabled' ) ? … … 317 318 318 319 // Media View (list|grid). 319 'media_view' => Media_Library_Organizer()->get_class( 'common' )->get_media_view(),320 'media_view' => Media_Library_Organizer()->get_class( 'common' )->get_media_view(), 320 321 321 322 // Add New Taxonomy Term. 322 'ajaxurl' => admin_url( 'admin-ajax.php' ),323 'create_term' => array(323 'ajaxurl' => admin_url( 'admin-ajax.php' ), 324 'create_term' => array( 324 325 'action' => 'media_library_organizer_add_term', 325 326 'nonce' => wp_create_nonce( 'media_library_organizer_add_term' ), … … 327 328 328 329 // Get Taxonomies Terms. 329 'get_taxonomies_terms' => array(330 'get_taxonomies_terms' => array( 330 331 'action' => 'media_library_organizer_get_taxonomies_terms', 331 332 'nonce' => wp_create_nonce( 'media_library_organizer_get_taxonomies_terms' ), … … 333 334 334 335 // Get Taxonomy Terms. 335 'get_taxonomy_terms' => array(336 'get_taxonomy_terms' => array( 336 337 'action' => 'media_library_organizer_get_taxonomy_terms', 337 338 'nonce' => wp_create_nonce( 'media_library_organizer_get_taxonomy_terms' ), … … 339 340 340 341 // Labels. 341 'labels' => array(342 'labels' => array( 342 343 'unassigned' => __( '(Unassigned)', 'media-library-organizer' ), 343 344 ), … … 1302 1303 } 1303 1304 1305 /** 1306 * Whether to show Attachment counts for Terms on Taxonomy <select> dropdowns. 1307 * 1308 * We don't display these outside of WordPress Admin > Media, because the Attachment count 1309 * will include all file types, meaning it's inaccurate when e.g. selecting a Featured Image 1310 * for a Page/Post, as the media view will be restricted to images. 1311 * 1312 * Calculating counts by MIME type is expensive, so it's better not to show the count. 1313 * 1314 * @since 1.4.1 1315 * 1316 * @return bool Show Attachment Count 1317 */ 1318 public function show_attachment_count() { 1319 1320 // By default, show attachment count for each Term. 1321 $show_attachment_count = true; 1322 1323 // Return if we can't determine the current screen. 1324 if ( ! function_exists( 'get_current_screen' ) ) { 1325 return $show_attachment_count; 1326 } 1327 1328 // Get screen. 1329 $screen = get_current_screen(); 1330 1331 // Depending on the WordPress Admin screen, show or hide term counts. 1332 switch ( $screen->base ) { 1333 case 'upload': 1334 $show_attachment_count = true; 1335 break; 1336 1337 default: 1338 $show_attachment_count = false; 1339 break; 1340 } 1341 1342 /** 1343 * Whether to show Attachment counts for Terms on Taxonomy <select> dropdowns. 1344 * 1345 * We don't display these outside of WordPress Admin > Media, because the Attachment count 1346 * will include all file types, meaning it's inaccurate when e.g. selecting a Featured Image 1347 * for a Page/Post, as the media view will be restricted to images. 1348 * 1349 * Calculating counts by MIME type is expensive, so it's better not to show the count. 1350 * 1351 * @since 1.4.1 1352 * 1353 * @param bool $show_attachment_count Show Attachment Count. 1354 * @param array $screen Screen. 1355 */ 1356 $show_attachment_count = apply_filters( 'media_library_organizer_media_show_attachment_count', $show_attachment_count, $screen ); 1357 1358 // Return. 1359 return $show_attachment_count; 1360 1361 } 1362 1304 1363 } -
media-library-organizer/tags/1.4.1/languages/media-library-organizer.pot
r2688245 r2692053 3 3 msgid "" 4 4 msgstr "" 5 "Project-Id-Version: Media Library Organizer 1.4. 0\n"5 "Project-Id-Version: Media Library Organizer 1.4.1\n" 6 6 "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/media-library-organizer\n" 7 7 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" … … 10 10 "Content-Type: text/plain; charset=UTF-8\n" 11 11 "Content-Transfer-Encoding: 8bit\n" 12 "POT-Creation-Date: 2022-03- 03T13:44:05+00:00\n"12 "POT-Creation-Date: 2022-03-10T14:23:47+00:00\n" 13 13 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" 14 14 "X-Generator: WP-CLI 2.5.0\n" … … 101 101 #: addons/tree-view/includes/global/class-media-library-organizer-tree-view-media.php:355 102 102 #: includes/global/class-media-library-organizer-media.php:199 103 #: includes/global/class-media-library-organizer-media.php:34 2103 #: includes/global/class-media-library-organizer-media.php:343 104 104 msgid "(Unassigned)" 105 105 msgstr "" 106 106 107 107 #: addons/tree-view/views/admin/media.php:19 108 #: includes/global/class-media-library-organizer-media.php:93 7109 #: includes/global/class-media-library-organizer-media.php:98 0108 #: includes/global/class-media-library-organizer-media.php:938 109 #: includes/global/class-media-library-organizer-media.php:981 110 110 msgid "Add" 111 111 msgstr "" … … 589 589 msgstr "" 590 590 591 #. translators: Folder name592 591 #. translators: Folder path and name 593 592 #: includes/global/class-media-library-organizer-filesystem.php:138 -
media-library-organizer/tags/1.4.1/media-library-organizer.php
r2688245 r2692053 9 9 * Plugin Name: Media Library Organizer 10 10 * Plugin URI: https://wpmedialibrary.com 11 * Version: 1.4. 011 * Version: 1.4.1 12 12 * Author: WP Media Library 13 13 * Author URI: https://wpmedialibrary.com -
media-library-organizer/tags/1.4.1/readme.txt
r2688245 r2692053 173 173 == Changelog == 174 174 175 = 1.4.1 (2022-03-10) = 176 * Fix: Category Dropdown Filter: Don't show Attachment count for Terms when selecting media/files on Pages/Posts, as counts include all file types 177 175 178 = 1.4.0 (2022-02-25) = 176 179 * Added: Tree View: Dragging and dropping Attachment(s) on to (Unassigned) will remove all Categories from Attachment(s) -
media-library-organizer/trunk/assets/js/media.js
r2688245 r2692053 248 248 media_library_organizer_media.taxonomies[ taxonomy_name ].terms, 249 249 media_library_organizer_media.taxonomies[ taxonomy_name ].taxonomy.labels.all_items, 250 media_library_organizer_media.labels.unassigned 250 media_library_organizer_media.labels.unassigned, 251 media_library_organizer_media.show_attachment_count 251 252 ); 252 253 } … … 265 266 * @param string all_items_label All Terms Label e.g. "All Media Categories", translated. 266 267 * @param string unassigned_items_label Unassigned Terms Label e.g. "Unassigned", translated. 267 */ 268 function mediaLibraryOrganizerGridViewInitializeTaxonomyFilter( taxonomy_name, terms, all_items_label, unassigned_items_label ) { 268 * @param bool show_attachment_count Show Attachment Counts for each Term. 269 */ 270 function mediaLibraryOrganizerGridViewInitializeTaxonomyFilter( taxonomy_name, terms, all_items_label, unassigned_items_label, show_attachment_count ) { 269 271 270 272 ( function() { … … 297 299 props[ taxonomy_name ] = term.slug; 298 300 301 // Build label, depending on whether to include the Attachment count or not. 302 var label = term.name + ( show_attachment_count === '1' ? ' (' + term.count + ')' : '' ); 303 299 304 filters[ index ] = { 300 text: term.name + ' (' + term.count + ')',305 text: label, 301 306 302 307 // Key = WP_Query taxonomy name, which ensures that taxonomy-name=1 is sent … … 839 844 * @param string all_items_label All Terms Label e.g. "All Media Categories", translated. 840 845 * @param string unassigned_items_label Unassigned Terms Label e.g. "Unassigned", translated. 841 */ 842 function mediaLibraryOrganizerGridViewReplaceTaxonomyFilter( taxonomy_name, terms, all_items_label, unassigned_items_label ) { 846 * @param bool show_attachment_count Show Attachment Counts for each Term. 847 */ 848 function mediaLibraryOrganizerGridViewReplaceTaxonomyFilter( taxonomy_name, terms, all_items_label, unassigned_items_label, show_attachment_count ) { 843 849 844 850 ( function( $ ) { … … 850 856 851 857 // Populate MediaLibraryOrganizerTaxonomyFilter[ taxonomy_name ] class with new Terms. 852 mediaLibraryOrganizerGridViewInitializeTaxonomyFilter( taxonomy_name, terms, all_items_label, unassigned_items_label );858 mediaLibraryOrganizerGridViewInitializeTaxonomyFilter( taxonomy_name, terms, all_items_label, unassigned_items_label, show_attachment_count ); 853 859 854 860 // Render updated Filter in Toolbar. -
media-library-organizer/trunk/assets/js/min/media-min.js
r2688245 r2692053 1 function mediaLibraryOrganizerQueryInitialize(){!function(){wp.media.query=function(e){return new wp.media.model.Attachments(null,{props:_.extend(_.defaults(e||{},{orderby:media_library_organizer_media.defaults.orderby,order:media_library_organizer_media.defaults.order}),{query:!0})})};var e=wp.media.model.Query,r;_.extend(e,{get:(r=[],function(i,a){var t={},n=e.orderby,o=e.defaultProps,d,m=!1;return delete i.query,delete i.cache,_.defaults(i,o),i.order=i.order.toUpperCase(),"DESC"!==i.order&&"ASC"!==i.order&&(i.order=o.order.toUpperCase()),_.contains(n.allowed,i.orderby)||(i.orderby=o.orderby),_.each(["include","exclude"],(function(e){i[e]&&!_.isArray(i[e])&&(i[e]=[i[e]])})),_.each(i,(function(r,i){_.isNull(r)||(t[e.propmap[i]||i]=r)})),_.defaults(t,e.defaultArgs),t.orderby=n.valuemap[i.orderby]||i.orderby,m=!1,r=[],d||(d=new e([],_.extend(a||{},{props:i,args:t})),r.push(d)),wp.media.events.trigger("mlo:grid:query",{query:d}),d})})}(jQuery,_)}function mediaLibraryOrganizerUploaderInitializeEvents(){!function($,e){void 0!==wp.Uploader&&e.extend(wp.Uploader.prototype,{init:function(){wp.media.events.trigger("mlo:grid:attachment:upload:init")},added:function(e){wp.media.events.trigger("mlo:grid:attachment:upload:added",e)},progress:function(e){wp.media.events.trigger("mlo:grid:attachment:upload:progress",e)},success:function(e){wp.media.events.trigger("mlo:grid:attachment:upload:success",e)},error:function(e){wp.media.events.trigger("mlo:grid:attachment:upload:error",e)},complete:function(){wp.media.events.trigger("mlo:grid:attachment:upload:complete")},refresh:function(){wp.media.events.trigger("mlo:grid:attachment:upload:refresh")}})}(jQuery,_)}function mediaLibraryOrganizerGridViewInitializeTaxonomyFilters(){!function(){for(let e in media_library_organizer_media.taxonomies)mediaLibraryOrganizerGridViewInitializeTaxonomyFilter(e,media_library_organizer_media.taxonomies[e].terms,media_library_organizer_media.taxonomies[e].taxonomy.labels.all_items,media_library_organizer_media.labels.unassigned )}(jQuery,_)}function mediaLibraryOrganizerGridViewInitializeTaxonomyFilter(e,r,i,a){jQuery,_,"0"!=media_library_organizer_media.settings[e+"_enabled"]&&media_library_organizer_media.settings[e+"_enabled"]&&(MediaLibraryOrganizerTaxonomyFilter[e]=wp.media.view.AttachmentFilters.extend({id:"media-attachment-taxonomy-filter-"+e,createFilters:function(){var t={},n,n;_.each(r||{},(function(r,i){var a={};a[e]=r.slug,t[i]={text:r.name+" ("+r.count+")",props:a}})),(n={})[e]="",t.all={text:i,props:n,priority:10},(n={})[e]="-1",t.unassigned={text:a,props:n,priority:10},this.filters=t},change:function(){var r=this.filters[this.el.value];r&&(this.model.set(r.props),wp.media.events.trigger("mlo:grid:filter:change:term",{taxonomy_name:e,slug:r.props[e]}))},select:function(){var e=this.model,r="all",i=e.toJSON();wp.media.events.trigger("mlo:grid:filter:select",{props:i}),_.find(this.filters,(function(e,a){var t;if(_.all(e.props,(function(e,r){return e===(_.isUndefined(i[r])?null:i[r])})))return r=a})),this.$el.val(r)}}))}function mediaLibraryOrganizerGridViewInitializeOrderByFilter(){jQuery,_,1==media_library_organizer_media.settings.orderby_enabled&&(MediaLibraryOrganizerTaxonomyOrderBy=wp.media.view.AttachmentFilters.extend({id:"media-attachment-orderby",createFilters:function(){var e={};_.each(media_library_organizer_media.orderby||{},(function(r,i){e[i]={text:r,props:{orderby:i}}})),this.filters=e},select:function(){var e=this.model,r="all",i=e.toJSON();_.find(this.filters,(function(e,a){var t;if(_.all(e.props,(function(e,r){return e===(_.isUndefined(i[r])?null:i[r])})))return r=a})),this.$el.val(r)}}))}function mediaLibraryOrganizerGridViewInitializeOrderFilter(){jQuery,_,1==media_library_organizer_media.settings.order_enabled&&(MediaLibraryOrganizerTaxonomyOrder=wp.media.view.AttachmentFilters.extend({id:"media-attachment-order",createFilters:function(){var e={};_.each(media_library_organizer_media.order||{},(function(r,i){e[i]={text:r,props:{order:i}}})),this.filters=e},select:function(){var e=this.model,r="all",i=e.toJSON();_.find(this.filters,(function(e,a){var t;if(_.all(e.props,(function(e,r){return e===(_.isUndefined(i[r])?null:i[r])})))return r=a})),this.$el.val(r)}}))}function mediaLibraryOrganizerGridViewAddFiltersToToolbar(){var e;jQuery,_,e=wp.media.view.AttachmentsBrowser,wp.media.view.AttachmentsBrowser=wp.media.view.AttachmentsBrowser.extend({createToolbar:function(){e.prototype.createToolbar.call(this);var r=-75;for(let e in MediaLibraryOrganizerTaxonomyFilter)this.toolbar.set(e,new MediaLibraryOrganizerTaxonomyFilter[e]({controller:this.controller,model:this.collection.props,priority:r}).render()),r++;1==media_library_organizer_media.settings.orderby_enabled&&(this.toolbar.set("MediaLibraryOrganizerTaxonomyOrderBy",new MediaLibraryOrganizerTaxonomyOrderBy({controller:this.controller,model:this.collection.props,priority:r}).render()),r++),1==media_library_organizer_media.settings.order_enabled&&(this.toolbar.set("MediaLibraryOrganizerTaxonomyOrder",new MediaLibraryOrganizerTaxonomyOrder({controller:this.controller,model:this.collection.props,priority:r}).render()),r++),wp.media.events.trigger("mlo:grid:filters:add",{attachments_browser:this,priority:r}),this.controller.on("select:activate",(function(){wp.media.events.trigger("mlo:grid:bulk_select:enabled")})),this.controller.on("select:deactivate",(function(){wp.media.events.trigger("mlo:grid:bulk_select:disabled")})),this.controller.on("selection:action:done",(function(){wp.media.events.trigger("mlo:grid:attachments:bulk_actions:done")})),MediaLibraryOrganizerAttachmentsBrowser=this},createAttachmentsHeading:function(){e.prototype.createAttachmentsHeading.call(this)}})}function mediaLibraryOrganizerGridViewInitializeEditAttachmentListeners(){!function($,e){var r;$("body").on("click","table.compat-attachment-fields a.taxonomy-add-new",(function(e){e.preventDefault(),mediaLibraryOrganizerEditAttachmentToggleTaxonomyTermForm($(this).data("taxonomy"))})),$("body").on("click","table.compat-attachment-fields div.mlo-taxonomy-term-add-fields input[type=button]",(function(e){e.preventDefault(),mediaLibraryOrganizerEditAttachmentAddTerm($(this).data("taxonomy"),$("input[type=text]",$(this).parent()).val())})),e.extend(wp.media.view.Attachment.prototype,{updateSave:function(e){var i=this._save=this._save||{status:"ready"};return e&&e!==i.status&&(this.$el.removeClass("save-"+i.status),i.status=e),this.$el.addClass("save-"+i.status),"waiting"!=r||"ready"!=i.status&&"complete"!=i.status||wp.media.events.trigger("mlo:grid:edit-attachment:edited",{attachment_id:this.model.id,attachment:this.model.attributes,changed:this.model.changed,taxonomy_term_changed:void 0!==this.model.changed.compat}),r=i.status,this}}),e.extend(wp.media.view.Attachment.Details.prototype,{moveFocus:function(){wp.media.events.trigger("mlo:grid:edit-attachment:deleted"),this.previousAttachment.length?this.previousAttachment.focus():this.nextAttachment.length?this.nextAttachment.focus():this.controller.uploader&&this.controller.uploader.$browser?this.controller.uploader.$browser.focus():this.moveFocusToLastFallback()}})}(jQuery,_)}function mediaLibraryOrganizerGridViewReplaceTaxonomyFilter(e,r,i,a){var $;$=jQuery,MediaLibraryOrganizerTaxonomyFilter.hasOwnProperty(e)&&(mediaLibraryOrganizerGridViewInitializeTaxonomyFilter(e,r,i,a),MediaLibraryOrganizerAttachmentsBrowser.toolbar.set(e,new MediaLibraryOrganizerTaxonomyFilter[e]({controller:MediaLibraryOrganizerAttachmentsBrowser.controller,model:MediaLibraryOrganizerAttachmentsBrowser.collection.props,priority:-75}).render()))}function mediaLibraryOrganizerGridViewUpdateTaxonomyFilters(){var $;($=jQuery).post(media_library_organizer_media.ajaxurl,{action:media_library_organizer_media.get_taxonomies_terms.action,nonce:media_library_organizer_media.get_taxonomies_terms.nonce},(function(e){if(e.success)for(let r in e.data)mediaLibraryOrganizerGridViewReplaceTaxonomyFilter(e.data[r].taxonomy.name,e.data[r].terms,e.data[r].taxonomy.labels.all_items,media_library_organizer_media.labels.unassigned);else alert(e.data)}))}function mediaLibraryOrganizerGridViewUpdateTaxonomyFilter(e){var $;($=jQuery).post(media_library_organizer_media.ajaxurl,{action:media_library_organizer_media.get_taxonomy_terms.action,nonce:media_library_organizer_media.get_taxonomy_terms.nonce,taxonomy_name:e},(function(e){e.success?mediaLibraryOrganizerGridViewReplaceTaxonomyFilter(e.data.taxonomy.name,e.data.terms,e.data.taxonomy.labels.all_items,media_library_organizer_media.labels.unassigned):alert(e.data)}))}function mediaLibraryOrganizerListViewReplaceTaxonomyFilter(e,r,i){var $;($=jQuery)("select#"+e).replaceWith(r),i.length>0&&$("select#"+e).val(i)}function mediaLibraryOrganizerListViewUpdateAttachmentTerms(e,r,i){var $;($=jQuery)("td.taxonomy-"+e+" a").each((function(){$(this).text()==r.name&&(i?($(this).text(i.name),$(this).attr("href","upload.php?taxonomy="+e+"&term="+i.slug)):$(this).remove())})),$("td.taxonomy-"+e).each((function(){$(this).html($(this).html().replace(/(^\s*,)|(,\s*$)/g,""))}))}function mediaLibraryOrganizerEditAttachmentToggleTaxonomyTermForm(e){var $;($=jQuery)(".mlo-taxonomy-term-add-fields."+e).hasClass("hidden")?$(".mlo-taxonomy-term-add-fields."+e).removeClass("hidden"):$(".mlo-taxonomy-term-add-fields."+e).addClass("hidden")}function mediaLibraryOrganizerEditAttachmentResetTaxonomyTermForm(e){var $;($=jQuery)(".mlo-taxonomy-term-add-fields."+e+"input[type=text]").val("")}function mediaLibraryOrganizerEditAttachmentAddTerm(e,r,i){var $,a;$=jQuery,a={action:media_library_organizer_media.create_term.action,nonce:media_library_organizer_media.create_term.nonce,taxonomy_name:e,term_name:r,term_parent_id:i},$.post(media_library_organizer_media.ajaxurl,a,(function(r){r.success?(wp.media.events.trigger("mlo:grid:edit-attachment:added:term",r.data),$("ul#"+r.data.term.taxonomy+"checklist").prepend(r.data.checkbox),mediaLibraryOrganizerEditAttachmentResetTaxonomyTermForm(e),$("ul#"+r.data.term.taxonomy+'checklist li:first input[type="checkbox"]').trigger("change")):alert(r.data)}))}function mediaLibraryOrganizerGridViewRefresh(){void 0!==wp.media.frame.library?wp.media.frame.library.props.set({ignore:+new Date}):wp.media.frame.content.get().collection.props.set({ignore:+new Date})}function mediaLibraryOrganizerInitialize(){mediaLibraryOrganizerQueryInitialize(),mediaLibraryOrganizerUploaderInitializeEvents(),mediaLibraryOrganizerGridViewInitializeTaxonomyFilters(),mediaLibraryOrganizerGridViewInitializeOrderByFilter(),mediaLibraryOrganizerGridViewInitializeOrderFilter(),mediaLibraryOrganizerGridViewAddFiltersToToolbar(),mediaLibraryOrganizerGridViewInitializeEditAttachmentListeners(),jQuery(document).ready((function($){"undefined"!=typeof mediaLibraryOrganizerSelectizeInit&&mediaLibraryOrganizerSelectizeInit()}))}var mediaLibraryOrganizerUploader=!1,MediaLibraryOrganizerTaxonomyFilter={},MediaLibraryOrganizerTaxonomyOrderBy,MediaLibraryOrganizerTaxonomyOrder,MediaLibraryOrganizerAttachmentsBrowser;wp.media.events.on("mlo:grid:attachment:upload:init",(function(){if(mediaLibraryOrganizerUploader||void 0===wp.media.frame.uploader||(mediaLibraryOrganizerUploader=wp.media.frame.uploader),mediaLibraryOrganizerUploader){var e={};for(let r in media_library_organizer_media.taxonomies)e[r]=media_library_organizer_media.taxonomies[r].selected_term;mediaLibraryOrganizerUploader.uploader.uploader.settings.multipart_params.media_library_organizer=e}})),wp.media.events.on("mlo:grid:filter:change:term",(function(e){mediaLibraryOrganizerUploader&&(mediaLibraryOrganizerUploader.uploader.uploader.settings.multipart_params.media_library_organizer[e.taxonomy_name]=e.slug)})),wp.media.events.on("mlo:grid:attachment:upload:success",(function(e){mediaLibraryOrganizerGridViewRefresh()})),wp.media.events.on("mlo:grid:edit-attachment:added:term",(function(e){mediaLibraryOrganizerGridViewReplaceTaxonomyFilter(e.taxonomy.name,e.terms,e.taxonomy.labels.all_items,media_library_organizer_media.labels.unassigned)})),wp.media.events.on("mlo:grid:edit-attachment:edited",(function(e){var $;$=jQuery,e.taxonomy_term_changed&&(mediaLibraryOrganizerGridViewUpdateTaxonomyFilters(),mediaLibraryOrganizerGridViewRefresh())})),wp.media.events.on("mlo:grid:edit-attachment:deleted",(function(e){mediaLibraryOrganizerGridViewUpdateTaxonomyFilters()})),wp.media.events.on("mlo:grid:bulk_select:disabled",(function(){mediaLibraryOrganizerGridViewUpdateTaxonomyFilters()})),mediaLibraryOrganizerInitialize();1 function mediaLibraryOrganizerQueryInitialize(){!function(){wp.media.query=function(e){return new wp.media.model.Attachments(null,{props:_.extend(_.defaults(e||{},{orderby:media_library_organizer_media.defaults.orderby,order:media_library_organizer_media.defaults.order}),{query:!0})})};var e=wp.media.model.Query,r;_.extend(e,{get:(r=[],function(i,a){var t={},n=e.orderby,o=e.defaultProps,d,m=!1;return delete i.query,delete i.cache,_.defaults(i,o),i.order=i.order.toUpperCase(),"DESC"!==i.order&&"ASC"!==i.order&&(i.order=o.order.toUpperCase()),_.contains(n.allowed,i.orderby)||(i.orderby=o.orderby),_.each(["include","exclude"],(function(e){i[e]&&!_.isArray(i[e])&&(i[e]=[i[e]])})),_.each(i,(function(r,i){_.isNull(r)||(t[e.propmap[i]||i]=r)})),_.defaults(t,e.defaultArgs),t.orderby=n.valuemap[i.orderby]||i.orderby,m=!1,r=[],d||(d=new e([],_.extend(a||{},{props:i,args:t})),r.push(d)),wp.media.events.trigger("mlo:grid:query",{query:d}),d})})}(jQuery,_)}function mediaLibraryOrganizerUploaderInitializeEvents(){!function($,e){void 0!==wp.Uploader&&e.extend(wp.Uploader.prototype,{init:function(){wp.media.events.trigger("mlo:grid:attachment:upload:init")},added:function(e){wp.media.events.trigger("mlo:grid:attachment:upload:added",e)},progress:function(e){wp.media.events.trigger("mlo:grid:attachment:upload:progress",e)},success:function(e){wp.media.events.trigger("mlo:grid:attachment:upload:success",e)},error:function(e){wp.media.events.trigger("mlo:grid:attachment:upload:error",e)},complete:function(){wp.media.events.trigger("mlo:grid:attachment:upload:complete")},refresh:function(){wp.media.events.trigger("mlo:grid:attachment:upload:refresh")}})}(jQuery,_)}function mediaLibraryOrganizerGridViewInitializeTaxonomyFilters(){!function(){for(let e in media_library_organizer_media.taxonomies)mediaLibraryOrganizerGridViewInitializeTaxonomyFilter(e,media_library_organizer_media.taxonomies[e].terms,media_library_organizer_media.taxonomies[e].taxonomy.labels.all_items,media_library_organizer_media.labels.unassigned,media_library_organizer_media.show_attachment_count)}(jQuery,_)}function mediaLibraryOrganizerGridViewInitializeTaxonomyFilter(e,r,i,a,t){jQuery,_,"0"!=media_library_organizer_media.settings[e+"_enabled"]&&media_library_organizer_media.settings[e+"_enabled"]&&(MediaLibraryOrganizerTaxonomyFilter[e]=wp.media.view.AttachmentFilters.extend({id:"media-attachment-taxonomy-filter-"+e,createFilters:function(){var n={},o,o;_.each(r||{},(function(r,i){var a={};a[e]=r.slug;var o=r.name+("1"===t?" ("+r.count+")":"");n[i]={text:o,props:a}})),(o={})[e]="",n.all={text:i,props:o,priority:10},(o={})[e]="-1",n.unassigned={text:a,props:o,priority:10},this.filters=n},change:function(){var r=this.filters[this.el.value];r&&(this.model.set(r.props),wp.media.events.trigger("mlo:grid:filter:change:term",{taxonomy_name:e,slug:r.props[e]}))},select:function(){var e=this.model,r="all",i=e.toJSON();wp.media.events.trigger("mlo:grid:filter:select",{props:i}),_.find(this.filters,(function(e,a){var t;if(_.all(e.props,(function(e,r){return e===(_.isUndefined(i[r])?null:i[r])})))return r=a})),this.$el.val(r)}}))}function mediaLibraryOrganizerGridViewInitializeOrderByFilter(){jQuery,_,1==media_library_organizer_media.settings.orderby_enabled&&(MediaLibraryOrganizerTaxonomyOrderBy=wp.media.view.AttachmentFilters.extend({id:"media-attachment-orderby",createFilters:function(){var e={};_.each(media_library_organizer_media.orderby||{},(function(r,i){e[i]={text:r,props:{orderby:i}}})),this.filters=e},select:function(){var e=this.model,r="all",i=e.toJSON();_.find(this.filters,(function(e,a){var t;if(_.all(e.props,(function(e,r){return e===(_.isUndefined(i[r])?null:i[r])})))return r=a})),this.$el.val(r)}}))}function mediaLibraryOrganizerGridViewInitializeOrderFilter(){jQuery,_,1==media_library_organizer_media.settings.order_enabled&&(MediaLibraryOrganizerTaxonomyOrder=wp.media.view.AttachmentFilters.extend({id:"media-attachment-order",createFilters:function(){var e={};_.each(media_library_organizer_media.order||{},(function(r,i){e[i]={text:r,props:{order:i}}})),this.filters=e},select:function(){var e=this.model,r="all",i=e.toJSON();_.find(this.filters,(function(e,a){var t;if(_.all(e.props,(function(e,r){return e===(_.isUndefined(i[r])?null:i[r])})))return r=a})),this.$el.val(r)}}))}function mediaLibraryOrganizerGridViewAddFiltersToToolbar(){var e;jQuery,_,e=wp.media.view.AttachmentsBrowser,wp.media.view.AttachmentsBrowser=wp.media.view.AttachmentsBrowser.extend({createToolbar:function(){e.prototype.createToolbar.call(this);var r=-75;for(let e in MediaLibraryOrganizerTaxonomyFilter)this.toolbar.set(e,new MediaLibraryOrganizerTaxonomyFilter[e]({controller:this.controller,model:this.collection.props,priority:r}).render()),r++;1==media_library_organizer_media.settings.orderby_enabled&&(this.toolbar.set("MediaLibraryOrganizerTaxonomyOrderBy",new MediaLibraryOrganizerTaxonomyOrderBy({controller:this.controller,model:this.collection.props,priority:r}).render()),r++),1==media_library_organizer_media.settings.order_enabled&&(this.toolbar.set("MediaLibraryOrganizerTaxonomyOrder",new MediaLibraryOrganizerTaxonomyOrder({controller:this.controller,model:this.collection.props,priority:r}).render()),r++),wp.media.events.trigger("mlo:grid:filters:add",{attachments_browser:this,priority:r}),this.controller.on("select:activate",(function(){wp.media.events.trigger("mlo:grid:bulk_select:enabled")})),this.controller.on("select:deactivate",(function(){wp.media.events.trigger("mlo:grid:bulk_select:disabled")})),this.controller.on("selection:action:done",(function(){wp.media.events.trigger("mlo:grid:attachments:bulk_actions:done")})),MediaLibraryOrganizerAttachmentsBrowser=this},createAttachmentsHeading:function(){e.prototype.createAttachmentsHeading.call(this)}})}function mediaLibraryOrganizerGridViewInitializeEditAttachmentListeners(){!function($,e){var r;$("body").on("click","table.compat-attachment-fields a.taxonomy-add-new",(function(e){e.preventDefault(),mediaLibraryOrganizerEditAttachmentToggleTaxonomyTermForm($(this).data("taxonomy"))})),$("body").on("click","table.compat-attachment-fields div.mlo-taxonomy-term-add-fields input[type=button]",(function(e){e.preventDefault(),mediaLibraryOrganizerEditAttachmentAddTerm($(this).data("taxonomy"),$("input[type=text]",$(this).parent()).val())})),e.extend(wp.media.view.Attachment.prototype,{updateSave:function(e){var i=this._save=this._save||{status:"ready"};return e&&e!==i.status&&(this.$el.removeClass("save-"+i.status),i.status=e),this.$el.addClass("save-"+i.status),"waiting"!=r||"ready"!=i.status&&"complete"!=i.status||wp.media.events.trigger("mlo:grid:edit-attachment:edited",{attachment_id:this.model.id,attachment:this.model.attributes,changed:this.model.changed,taxonomy_term_changed:void 0!==this.model.changed.compat}),r=i.status,this}}),e.extend(wp.media.view.Attachment.Details.prototype,{moveFocus:function(){wp.media.events.trigger("mlo:grid:edit-attachment:deleted"),this.previousAttachment.length?this.previousAttachment.focus():this.nextAttachment.length?this.nextAttachment.focus():this.controller.uploader&&this.controller.uploader.$browser?this.controller.uploader.$browser.focus():this.moveFocusToLastFallback()}})}(jQuery,_)}function mediaLibraryOrganizerGridViewReplaceTaxonomyFilter(e,r,i,a,t){var $;$=jQuery,MediaLibraryOrganizerTaxonomyFilter.hasOwnProperty(e)&&(mediaLibraryOrganizerGridViewInitializeTaxonomyFilter(e,r,i,a,t),MediaLibraryOrganizerAttachmentsBrowser.toolbar.set(e,new MediaLibraryOrganizerTaxonomyFilter[e]({controller:MediaLibraryOrganizerAttachmentsBrowser.controller,model:MediaLibraryOrganizerAttachmentsBrowser.collection.props,priority:-75}).render()))}function mediaLibraryOrganizerGridViewUpdateTaxonomyFilters(){var $;($=jQuery).post(media_library_organizer_media.ajaxurl,{action:media_library_organizer_media.get_taxonomies_terms.action,nonce:media_library_organizer_media.get_taxonomies_terms.nonce},(function(e){if(e.success)for(let r in e.data)mediaLibraryOrganizerGridViewReplaceTaxonomyFilter(e.data[r].taxonomy.name,e.data[r].terms,e.data[r].taxonomy.labels.all_items,media_library_organizer_media.labels.unassigned);else alert(e.data)}))}function mediaLibraryOrganizerGridViewUpdateTaxonomyFilter(e){var $;($=jQuery).post(media_library_organizer_media.ajaxurl,{action:media_library_organizer_media.get_taxonomy_terms.action,nonce:media_library_organizer_media.get_taxonomy_terms.nonce,taxonomy_name:e},(function(e){e.success?mediaLibraryOrganizerGridViewReplaceTaxonomyFilter(e.data.taxonomy.name,e.data.terms,e.data.taxonomy.labels.all_items,media_library_organizer_media.labels.unassigned):alert(e.data)}))}function mediaLibraryOrganizerListViewReplaceTaxonomyFilter(e,r,i){var $;($=jQuery)("select#"+e).replaceWith(r),i.length>0&&$("select#"+e).val(i)}function mediaLibraryOrganizerListViewUpdateAttachmentTerms(e,r,i){var $;($=jQuery)("td.taxonomy-"+e+" a").each((function(){$(this).text()==r.name&&(i?($(this).text(i.name),$(this).attr("href","upload.php?taxonomy="+e+"&term="+i.slug)):$(this).remove())})),$("td.taxonomy-"+e).each((function(){$(this).html($(this).html().replace(/(^\s*,)|(,\s*$)/g,""))}))}function mediaLibraryOrganizerEditAttachmentToggleTaxonomyTermForm(e){var $;($=jQuery)(".mlo-taxonomy-term-add-fields."+e).hasClass("hidden")?$(".mlo-taxonomy-term-add-fields."+e).removeClass("hidden"):$(".mlo-taxonomy-term-add-fields."+e).addClass("hidden")}function mediaLibraryOrganizerEditAttachmentResetTaxonomyTermForm(e){var $;($=jQuery)(".mlo-taxonomy-term-add-fields."+e+"input[type=text]").val("")}function mediaLibraryOrganizerEditAttachmentAddTerm(e,r,i){var $,a;$=jQuery,a={action:media_library_organizer_media.create_term.action,nonce:media_library_organizer_media.create_term.nonce,taxonomy_name:e,term_name:r,term_parent_id:i},$.post(media_library_organizer_media.ajaxurl,a,(function(r){r.success?(wp.media.events.trigger("mlo:grid:edit-attachment:added:term",r.data),$("ul#"+r.data.term.taxonomy+"checklist").prepend(r.data.checkbox),mediaLibraryOrganizerEditAttachmentResetTaxonomyTermForm(e),$("ul#"+r.data.term.taxonomy+'checklist li:first input[type="checkbox"]').trigger("change")):alert(r.data)}))}function mediaLibraryOrganizerGridViewRefresh(){void 0!==wp.media.frame.library?wp.media.frame.library.props.set({ignore:+new Date}):wp.media.frame.content.get().collection.props.set({ignore:+new Date})}function mediaLibraryOrganizerInitialize(){mediaLibraryOrganizerQueryInitialize(),mediaLibraryOrganizerUploaderInitializeEvents(),mediaLibraryOrganizerGridViewInitializeTaxonomyFilters(),mediaLibraryOrganizerGridViewInitializeOrderByFilter(),mediaLibraryOrganizerGridViewInitializeOrderFilter(),mediaLibraryOrganizerGridViewAddFiltersToToolbar(),mediaLibraryOrganizerGridViewInitializeEditAttachmentListeners(),jQuery(document).ready((function($){"undefined"!=typeof mediaLibraryOrganizerSelectizeInit&&mediaLibraryOrganizerSelectizeInit()}))}var mediaLibraryOrganizerUploader=!1,MediaLibraryOrganizerTaxonomyFilter={},MediaLibraryOrganizerTaxonomyOrderBy,MediaLibraryOrganizerTaxonomyOrder,MediaLibraryOrganizerAttachmentsBrowser;wp.media.events.on("mlo:grid:attachment:upload:init",(function(){if(mediaLibraryOrganizerUploader||void 0===wp.media.frame.uploader||(mediaLibraryOrganizerUploader=wp.media.frame.uploader),mediaLibraryOrganizerUploader){var e={};for(let r in media_library_organizer_media.taxonomies)e[r]=media_library_organizer_media.taxonomies[r].selected_term;mediaLibraryOrganizerUploader.uploader.uploader.settings.multipart_params.media_library_organizer=e}})),wp.media.events.on("mlo:grid:filter:change:term",(function(e){mediaLibraryOrganizerUploader&&(mediaLibraryOrganizerUploader.uploader.uploader.settings.multipart_params.media_library_organizer[e.taxonomy_name]=e.slug)})),wp.media.events.on("mlo:grid:attachment:upload:success",(function(e){mediaLibraryOrganizerGridViewRefresh()})),wp.media.events.on("mlo:grid:edit-attachment:added:term",(function(e){mediaLibraryOrganizerGridViewReplaceTaxonomyFilter(e.taxonomy.name,e.terms,e.taxonomy.labels.all_items,media_library_organizer_media.labels.unassigned)})),wp.media.events.on("mlo:grid:edit-attachment:edited",(function(e){var $;$=jQuery,e.taxonomy_term_changed&&(mediaLibraryOrganizerGridViewUpdateTaxonomyFilters(),mediaLibraryOrganizerGridViewRefresh())})),wp.media.events.on("mlo:grid:edit-attachment:deleted",(function(e){mediaLibraryOrganizerGridViewUpdateTaxonomyFilters()})),wp.media.events.on("mlo:grid:bulk_select:disabled",(function(){mediaLibraryOrganizerGridViewUpdateTaxonomyFilters()})),mediaLibraryOrganizerInitialize(); -
media-library-organizer/trunk/includes/class-media-library-organizer.php
r2688245 r2692053 64 64 $this->plugin->displayName = 'Media Library Organizer'; 65 65 $this->plugin->author_name = 'Media Library Organizer'; 66 $this->plugin->version = '1.4. 0';67 $this->plugin->buildDate = '2022-0 2-2518:00:00';66 $this->plugin->version = '1.4.1'; 67 $this->plugin->buildDate = '2022-03-10 18:00:00'; 68 68 $this->plugin->requires = '5.0'; 69 69 $this->plugin->tested = '5.9.1'; -
media-library-organizer/trunk/includes/global/class-media-library-organizer-filesystem.php
r2688245 r2692053 135 135 'media_library_organizer_common_get_tmp_folder', 136 136 sprintf( 137 /* translators: Folder name */137 /* translators: Folder path and name */ 138 138 __( 'Could not create temporary folder at %s', 'media-library-organizer' ), 139 139 $temporary_folder -
media-library-organizer/trunk/includes/global/class-media-library-organizer-media.php
r2688245 r2692053 297 297 'media_library_organizer_media', 298 298 array( 299 'order' => $this->base->get_class( 'common' )->get_order_options(), 300 'orderby' => $this->base->get_class( 'common' )->get_orderby_options(), 301 'settings' => $this->base->get_class( 'settings' )->get_settings( 'general' ), 302 'taxonomies' => $taxonomies, 299 'order' => $this->base->get_class( 'common' )->get_order_options(), 300 'orderby' => $this->base->get_class( 'common' )->get_orderby_options(), 301 'settings' => $this->base->get_class( 'settings' )->get_settings( 'general' ), 302 'taxonomies' => $taxonomies, 303 'show_attachment_count' => $this->show_attachment_count(), 303 304 304 305 // Default Values for orderby and order, based on either the User Defaults or the Plugin / WordPress Defaults. 305 'defaults' => array(306 'defaults' => array( 306 307 'orderby' => ( 307 308 $this->base->get_class( 'settings' )->get_setting( 'user-options', 'orderby_enabled' ) ? … … 317 318 318 319 // Media View (list|grid). 319 'media_view' => Media_Library_Organizer()->get_class( 'common' )->get_media_view(),320 'media_view' => Media_Library_Organizer()->get_class( 'common' )->get_media_view(), 320 321 321 322 // Add New Taxonomy Term. 322 'ajaxurl' => admin_url( 'admin-ajax.php' ),323 'create_term' => array(323 'ajaxurl' => admin_url( 'admin-ajax.php' ), 324 'create_term' => array( 324 325 'action' => 'media_library_organizer_add_term', 325 326 'nonce' => wp_create_nonce( 'media_library_organizer_add_term' ), … … 327 328 328 329 // Get Taxonomies Terms. 329 'get_taxonomies_terms' => array(330 'get_taxonomies_terms' => array( 330 331 'action' => 'media_library_organizer_get_taxonomies_terms', 331 332 'nonce' => wp_create_nonce( 'media_library_organizer_get_taxonomies_terms' ), … … 333 334 334 335 // Get Taxonomy Terms. 335 'get_taxonomy_terms' => array(336 'get_taxonomy_terms' => array( 336 337 'action' => 'media_library_organizer_get_taxonomy_terms', 337 338 'nonce' => wp_create_nonce( 'media_library_organizer_get_taxonomy_terms' ), … … 339 340 340 341 // Labels. 341 'labels' => array(342 'labels' => array( 342 343 'unassigned' => __( '(Unassigned)', 'media-library-organizer' ), 343 344 ), … … 1302 1303 } 1303 1304 1305 /** 1306 * Whether to show Attachment counts for Terms on Taxonomy <select> dropdowns. 1307 * 1308 * We don't display these outside of WordPress Admin > Media, because the Attachment count 1309 * will include all file types, meaning it's inaccurate when e.g. selecting a Featured Image 1310 * for a Page/Post, as the media view will be restricted to images. 1311 * 1312 * Calculating counts by MIME type is expensive, so it's better not to show the count. 1313 * 1314 * @since 1.4.1 1315 * 1316 * @return bool Show Attachment Count 1317 */ 1318 public function show_attachment_count() { 1319 1320 // By default, show attachment count for each Term. 1321 $show_attachment_count = true; 1322 1323 // Return if we can't determine the current screen. 1324 if ( ! function_exists( 'get_current_screen' ) ) { 1325 return $show_attachment_count; 1326 } 1327 1328 // Get screen. 1329 $screen = get_current_screen(); 1330 1331 // Depending on the WordPress Admin screen, show or hide term counts. 1332 switch ( $screen->base ) { 1333 case 'upload': 1334 $show_attachment_count = true; 1335 break; 1336 1337 default: 1338 $show_attachment_count = false; 1339 break; 1340 } 1341 1342 /** 1343 * Whether to show Attachment counts for Terms on Taxonomy <select> dropdowns. 1344 * 1345 * We don't display these outside of WordPress Admin > Media, because the Attachment count 1346 * will include all file types, meaning it's inaccurate when e.g. selecting a Featured Image 1347 * for a Page/Post, as the media view will be restricted to images. 1348 * 1349 * Calculating counts by MIME type is expensive, so it's better not to show the count. 1350 * 1351 * @since 1.4.1 1352 * 1353 * @param bool $show_attachment_count Show Attachment Count. 1354 * @param array $screen Screen. 1355 */ 1356 $show_attachment_count = apply_filters( 'media_library_organizer_media_show_attachment_count', $show_attachment_count, $screen ); 1357 1358 // Return. 1359 return $show_attachment_count; 1360 1361 } 1362 1304 1363 } -
media-library-organizer/trunk/languages/media-library-organizer.pot
r2688245 r2692053 3 3 msgid "" 4 4 msgstr "" 5 "Project-Id-Version: Media Library Organizer 1.4. 0\n"5 "Project-Id-Version: Media Library Organizer 1.4.1\n" 6 6 "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/media-library-organizer\n" 7 7 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" … … 10 10 "Content-Type: text/plain; charset=UTF-8\n" 11 11 "Content-Transfer-Encoding: 8bit\n" 12 "POT-Creation-Date: 2022-03- 03T13:44:05+00:00\n"12 "POT-Creation-Date: 2022-03-10T14:23:47+00:00\n" 13 13 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" 14 14 "X-Generator: WP-CLI 2.5.0\n" … … 101 101 #: addons/tree-view/includes/global/class-media-library-organizer-tree-view-media.php:355 102 102 #: includes/global/class-media-library-organizer-media.php:199 103 #: includes/global/class-media-library-organizer-media.php:34 2103 #: includes/global/class-media-library-organizer-media.php:343 104 104 msgid "(Unassigned)" 105 105 msgstr "" 106 106 107 107 #: addons/tree-view/views/admin/media.php:19 108 #: includes/global/class-media-library-organizer-media.php:93 7109 #: includes/global/class-media-library-organizer-media.php:98 0108 #: includes/global/class-media-library-organizer-media.php:938 109 #: includes/global/class-media-library-organizer-media.php:981 110 110 msgid "Add" 111 111 msgstr "" … … 589 589 msgstr "" 590 590 591 #. translators: Folder name592 591 #. translators: Folder path and name 593 592 #: includes/global/class-media-library-organizer-filesystem.php:138 -
media-library-organizer/trunk/media-library-organizer.php
r2688245 r2692053 9 9 * Plugin Name: Media Library Organizer 10 10 * Plugin URI: https://wpmedialibrary.com 11 * Version: 1.4. 011 * Version: 1.4.1 12 12 * Author: WP Media Library 13 13 * Author URI: https://wpmedialibrary.com -
media-library-organizer/trunk/readme.txt
r2688245 r2692053 173 173 == Changelog == 174 174 175 = 1.4.1 (2022-03-10) = 176 * Fix: Category Dropdown Filter: Don't show Attachment count for Terms when selecting media/files on Pages/Posts, as counts include all file types 177 175 178 = 1.4.0 (2022-02-25) = 176 179 * Added: Tree View: Dragging and dropping Attachment(s) on to (Unassigned) will remove all Categories from Attachment(s)
Note: See TracChangeset
for help on using the changeset viewer.