PluginProbe ʕ •ᴥ•ʔ
Meta Box / 5.6.8
Meta Box v5.6.8
trunk 4.1.10 4.1.11 4.10 4.10.1 4.10.2 4.10.3 4.10.4 4.11 4.11.1 4.11.2 4.12.1 4.12.4 4.12.5 4.12.6 4.13.0 4.13.1 4.13.2 4.13.3 4.13.4 4.14.0 4.14.1 4.14.10 4.14.11 4.14.2 4.14.4 4.14.5 4.14.6 4.14.7 4.14.8 4.14.9 4.15.0 4.15.1 4.15.2 4.15.3 4.15.4 4.15.5 4.15.6 4.15.7 4.15.8 4.15.9 4.16.0 4.16.1 4.16.2 4.16.3 4.17.0 4.17.1 4.17.2 4.17.3 4.18.0 4.18.1 4.18.2 4.18.3 4.18.4 4.2 4.2.1 4.2.2 4.2.3 4.2.4 4.3 4.3.1 4.3.10 4.3.11 4.3.2 4.3.3 4.3.4 4.3.5 4.3.6 4.3.7 4.3.8 4.3.9 4.4.0 4.4.1 4.4.3 4.5 4.5.1 4.5.2 4.5.3 4.5.4 4.5.5 4.5.6 4.5.7 4.6 4.7 4.7.1 4.7.2 4.7.3 4.8.0 4.8.1 4.8.2 4.8.3 4.8.4 4.8.5 4.8.6 4.8.7 4.9 4.9.1 4.9.2 4.9.3 4.9.4 4.9.5 4.9.6 4.9.7 4.9.8 5.0.0 5.0.1 5.1.0 5.1.1 5.1.2 5.10.0 5.10.1 5.10.10 5.10.11 5.10.12 5.10.13 5.10.14 5.10.15 5.10.16 5.10.17 5.10.18 5.10.19 5.10.2 5.10.3 5.10.4 5.10.5 5.10.6 5.10.7 5.10.8 5.10.9 5.11.0 5.11.1 5.11.2 5.11.3 5.11.4 5.12.0 5.2.0 5.2.1 5.2.10 5.2.2 5.2.3 5.2.4 5.2.5 5.2.6 5.2.7 5.2.8 5.2.9 5.3.0 5.3.1 5.3.10 5.3.2 5.3.3 5.3.4 5.3.5 5.3.6 5.3.7 5.3.8 5.3.9 5.4.0 5.4.1 5.4.2 5.4.3 5.4.4 5.4.5 5.4.6 5.4.7 5.4.8 5.5.0 5.5.1 5.6.0 5.6.1 5.6.10 5.6.11 5.6.12 5.6.13 5.6.14 5.6.15 5.6.16 5.6.17 5.6.18 5.6.2 5.6.3 5.6.4 5.6.5 5.6.6 5.6.7 5.6.8 5.6.9 5.7.0 5.7.1 5.7.2 5.7.3 5.7.4 5.7.5 5.8.0 5.8.1 5.8.2 5.9.0 5.9.1 5.9.10 5.9.11 5.9.2 5.9.3 5.9.4 5.9.5 5.9.6 5.9.7 5.9.8 5.9.9
meta-box / js / file-upload.js
meta-box / js Last commit date
jqueryui 4 years ago select2 6 years ago wp-color-picker-alpha 5 years ago autocomplete.js 6 years ago autosave.js 7 years ago button-group.js 6 years ago clone.js 4 years ago color.js 6 years ago date.js 6 years ago datetime.js 6 years ago file-input.js 4 years ago file-upload.js 4 years ago file.js 4 years ago image-advanced.js 4 years ago image-select.js 6 years ago image-upload.js 4 years ago input-list.js 6 years ago map-frontend.js 4 years ago map.js 4 years ago media.js 3 years ago notification.js 6 years ago oembed.js 6 years ago osm-frontend.js 5 years ago osm.js 5 years ago range.js 4 years ago script.js 6 years ago select-advanced.js 3 years ago select-tree.js 5 years ago select.js 6 years ago slider.js 6 years ago taxonomy.js 3 years ago time.js 6 years ago validation.min.js 3 years ago video.js 6 years ago wysiwyg.js 5 years ago
file-upload.js
104 lines
1 ( function ( $, wp, rwmb ) {
2 'use strict';
3
4 var views = rwmb.views = rwmb.views || {},
5 MediaField = views.MediaField,
6 FileUploadField, UploadButton;
7
8 FileUploadField = views.FileUploadField = MediaField.extend( {
9 createAddButton: function () {
10 this.addButton = new UploadButton( {controller: this.controller} );
11 }
12 } );
13
14 UploadButton = views.UploadButton = Backbone.View.extend( {
15 className: 'rwmb-upload-area',
16 tagName: 'div',
17 template: wp.template( 'rwmb-upload-area' ),
18 render: function () {
19 this.$el.html( this.template( {} ) );
20 return this;
21 },
22
23 initialize: function ( options ) {
24 this.controller = options.controller;
25 this.el.id = _.uniqueId( 'rwmb-upload-area-' );
26 this.render();
27
28 // Auto hide if you reach the max number of media
29 this.listenTo( this.controller, 'change:full', function () {
30 this.$el.toggle( ! this.controller.get( 'full' ) );
31 } );
32 },
33
34 // Initializes plupload using code from wp.Uploader (wp-includes/js/plupload/wp-plupload.js)
35 initUploader: function ( $this ) {
36 var self = this,
37 extensions = this.getExtensions().join( ',' ),
38 maxFileSize = this.controller.get( 'maxFileSize' ),
39 options = {
40 container: this.el,
41 dropzone: this.el,
42 browser: this.$( '.rwmb-browse-button' ),
43 params: {
44 post_id : $( '#post_ID' ).val()
45 },
46 added: function( attachment ) {
47 self.controller.get( 'items' ).add( [attachment] );
48 }
49 };
50
51 // Initialize the plupload instance.
52 this.uploader = new wp.Uploader( options );
53
54 var filters = this.uploader.uploader.getOption( 'filters' );
55 if ( maxFileSize ) {
56 filters.max_file_size = maxFileSize;
57 }
58 if ( extensions ) {
59 filters.mime_types = [{title: i18nRwmbMedia.select, extensions: extensions}];
60 }
61 this.uploader.uploader.setOption( 'filters', filters );
62 $this.data( 'uploader', this.uploader );
63 },
64
65 getExtensions: function () {
66 var mimeTypes = this.controller.get( 'mimeType' ).split( ',' ),
67 exts = [];
68
69 _.each( mimeTypes, function ( current, index ) {
70 if ( i18nRwmbMedia.extensions[current] ) {
71 exts = exts.concat( i18nRwmbMedia.extensions[current] );
72 }
73 } );
74 return exts;
75 }
76 } );
77
78 function initFileUpload() {
79 var $this = $( this ),
80 view = $this.data( 'view' );
81
82 if ( view ) {
83 return;
84 }
85 view = new FileUploadField( { input: this } );
86
87 $this.siblings( '.rwmb-media-view' ).remove();
88 $this.after( view.el );
89
90 // Init uploader after view is inserted to make wp.Uploader works.
91 view.addButton.initUploader( $this );
92
93 $this.data( 'view', view );
94 }
95
96 function init( e ) {
97 $( e.target ).find( '.rwmb-file_upload' ).each( initFileUpload );
98 }
99
100 rwmb.$document
101 .on( 'mb_ready', init )
102 .on( 'clone', '.rwmb-file_upload', initFileUpload )
103 } )( jQuery, wp, rwmb );
104