HEX

Warning: set_time_limit() [function.set-time-limit]: Cannot set time limit - prohibited by configuration in /home/u547966/brikov.ru/www/wp-content/plugins/admin-menu-editor/menu-editor.php on line 745
Server: Apache
System: Linux 4.19.0-0.bpo.9-amd64 x86_64 at red40
User: u547966 (5490)
PHP: 5.3.29-mh2
Disabled: syslog, dl, popen, proc_open, proc_nice, proc_get_status, proc_close, proc_terminate, posix_mkfifo, chown, chgrp, accelerator_reset, opcache_reset, accelerator_get_status, opcache_get_status, pcntl_alarm, pcntl_fork, pcntl_waitpid, pcntl_wait, pcntl_wifexited, pcntl_wifstopped, pcntl_wifsignaled, pcntl_wifcontinued, pcntl_wexitstatus, pcntl_wtermsig, pcntl_wstopsig, pcntl_signal, pcntl_signal_dispatch, pcntl_get_last_error, pcntl_strerror, pcntl_sigprocmask, pcntl_sigwaitinfo, pcntl_sigtimedwait, pcntl_exec, pcntl_getpriority, pcntl_setpriority
Upload Files
File: /home/u547966/brikov.ru/www/wp-content/plugins/wp-media-folder/assets/js/fillter-size.js
/** 
 * We developed this code with our hearts and passion.
 * @package wp-media-folder
 * @copyright Copyright (C) 2014 JoomUnited (http://www.joomunited.com). All rights reserved.
 * @license GNU General Public License version 2 or later; http://www.gnu.org/licenses/gpl-2.0.html
 */

(function($){
    
   
    $(document).ready(function(){
        bindselectchange = function(){
            
            $(document).on('click', '.manage-column', function(event) {
                var $this = $(this);
                var id = $this.attr('id');
                if(id == 'wpmf_size'){
                    var orderby = 'size';
                }else if(id == 'wpmf_filetype'){
                    var orderby = 'filetype';
                }else{
                    var orderby = id;
                }
                if($this.hasClass('asc')){
                    var order  = 'desc';
                }else{
                    var order = 'asc';
                }
                
                if($('body').hasClass('upload-php')){
                    $.ajax({
                        type : "POST",
                        url : ajaxurl,
                        data :  {
                            action : "wpmf_media_order",
                            value : orderby + '|' + order
                        }
                    });
                }
            });
            
            $(document).on('change', '.wpmf-order-media', function(event) {
                var $this = $(this);
                $.ajax({
                    type : "POST",
                    url : ajaxurl,
                    data :  {
                        action : "wpmf_media_order",
                        value : $this.val()
                    }
                });
            });
           
            $(document).on('change', '.wpmf-order-folder.wpmf-order', function(event) {
                var $this = $(this);
                $.ajax({
                    type : "POST",
                    url : ajaxurl,
                    data :  {
                        action : "wpmf_folder_order",
                        wpmf_folder_order : $('#media-order-folder').val()
                    },
                    success:function(res){
                        order_f = $this.val();
                        if(res != 'all'){
                            var selectID = $('.wpmf-categories option:selected').data('id');
                            
                            if(page != 'table'){
                                $('[id^="__wp-uploader-id-"]:visible .wpmf-categories option[data-id="'+ selectID +'"]').prop('selected',true).change();
                                var dir = $('.directory.expanded.selected').find('>a').data('file');
                                if(page != 'table'){
                                    closedir('/');
                                    if(term_root_id && wpmf_active_media == 1 && wpmf_role !='administrator'){
                                        var root_id = parseInt(term_root_id);
                                    }else{
                                        var root_id = 0;
                                    }
                                    
                                    bcat = wpmf_categories[currentCategory];  
                                    var dirs = [];
                                    dirs.push( bcat.id);
                                    if(wpmf_active_media == 1 && wpmf_role !='administrator'){
                                        $('.jaofiletree li').removeClass('selected');
                                        $('.directory').find('.zmdi').removeClass('zmdi-folder-outline').addClass('zmdi-folder');
                                        $('.jaofiletree li[data-id="'+ selectedId +'"]').addClass('selected');
                                    }else{
                                        while(bcat.parent_id !=0){   
                                            bcat = wpmf_categories[wpmf_categories[bcat.id].parent_id];
                                            if(bcat.id != 0){
                                                dirs.unshift(bcat.id);
                                            }
                                        }   
                                    }
                                    dirs.unshift("0");
                                    opensortfolders(dirs, currentCategory);
                                }
                            }else{
                                $('.wpmf-categories option[data-id="'+ selectID +'"]').prop('selected',true).change();
                            }
                        }
                    }
                });
            });
        }
        
        opensortfolders = function(dirs , selectedId) {  
            if(dirs.length==1 && dirs[0]==0) { 
                setSelectedFolder(0);
                return true;
            }
            parent_id = dirs.shift(); 
            var cdir = $('#jao a[data-id="' + parent_id + '"]').data('file');  
            if(dirs.length===0) {
                openfolder(cdir, function(){setSelectedFolder(selectedId)} );
                return true;
            }          
          
            openfolder( cdir, function(){openfolders(dirs,selectedId);} );          
            return true;
        };
        
        bindselectchange();
        if(typeof wp != "undefined"){
            if ( wp.media && $('body.upload-php table.media').length===0 ) {
                if(wp.media.view.AttachmentFilters == undefined || wp.media.view.AttachmentsBrowser == undefined) return ;
                FilterSizeWeight = function(){
                    //=========================================================================
                    
                    wp.media.view.AttachmentFilters['wpmf_attachment_mimetype'] = wp.media.view.AttachmentFilters.extend({
                            className: 'attachment-filters attachment-mimetype',
                            id: 'media-attachment-size-mimetype',
                            createFilters: function() {
                                var filters = {};
                                _.each( wpmf_post_mime_type || [], function( text, key ) {
                                    filters[ key ] = {
                                        text: text[0],
                                        props : {
                                            status:  null,
                                            type:    key,
                                            uploadedTo: null,
                                            orderby: false
                                        },
                                    };                                        
                                });
                                
                                filters['unattached'] = {
                                    text: 'Unattached',
                                    props : {
                                        status:  null,
                                        type:    '',
                                        uploadedTo: null,
                                        orderby: false
                                    },
                                };   
                                
                                
                                filters.all = {
                                        text:  wpmflang_fillter.mimetype,
                                        props: {
                                            status:  null,
                                            type:    null,
                                            uploadedTo: null,
                                            orderby: false
                                        },
                                        priority: 10
                                };
                                
                                this.filters = filters;
                            }
                    });
                    
                    
                    
                    wp.media.view.AttachmentFilters['wpmf_attachment_size'] = wp.media.view.AttachmentFilters.extend({
                            className: 'wpmf-attachment-size attachment-filters',
                            id: 'media-attachment-size-filters',
                            createFilters: function() {
                                var filters = {};
                                _.each( wpmf_size || [], function( text, key ) {
                                    filters[ text ] = {
                                        text: text,
                                        props : {
                                            wpmf_size: text
                                        },
                                    };                                        
                                });
                                
                                filters.all = {
                                        text:  wpmflang_fillter.all_size_label,
                                        props: {
                                            wpmf_size: 'all',
                                        },
                                        priority: 10
                                };
                                
                                this.filters = filters;
                            }
                    });
                    
                    wp.media.view.AttachmentFilters['wpmf_attachment_weight'] = wp.media.view.AttachmentFilters.extend({
                            className: 'wpmf-attachment-weight attachment-filters',
                            id: 'media-attachment-weight-filters',
                            createFilters: function() {
                                var filters = {};
                                _.each( wpmf_weight || [], function( text, key ) {
                                    var labels = text[0].split('-');
                                    if(text[1] == 'kB'){
                                        var label = (labels[0]/1024)+' kB-'+(labels[1]/1024)+' kB';
                                    }else{
                                        var label = (labels[0]/(1024*1024))+' MB-'+(labels[1]/(1024*1024))+' MB';
                                    }
                                    filters[ text[0] ] = {
                                        text: label,
                                        props : {
                                            wpmf_weight: text[0]
                                        },
                                    };                                        
                                });
                            
                                filters.all = {
                                        text:  wpmflang_fillter.all_weight_label,
                                        props: {
                                            wpmf_weight: 'all',
                                        },
                                        priority: 10
                                };
                                
                                this.filters = filters;
                            }
                    });
                    
                    
                    wp.media.view.AttachmentFilters['wpmf_order_folder'] = wp.media.view.AttachmentFilters.extend({
                            className: 'wpmf-order-folder attachment-filters',
                            id: 'media-order-folder',
                            createFilters: function() {
                                var filters = {};
                                _.each( order_folder || [], function( text, key ) {
                                    filters[ key ] = {
                                        text: text,
                                        props : {
                                            wpmf_order_folder: key
                                        },
                                    };                                        
                                });
                            
                                filters.all = {
                                        text:  wpmflang_fillter.order_folder_label,
                                        props: {
                                            wpmf_order_folder: 'name-asc',
                                        },
                                        priority: 10
                                };
                                
                                this.filters = filters;
                            }
                    });
                    
                    wp.media.view.AttachmentFilters['wpmf_order_media'] = wp.media.view.AttachmentFilters.extend({
                            className: 'wpmf-order-media attachment-filters',
                            id: 'media-order-media',
                            createFilters: function() {
                                var filters = {};
                                _.each( order_media || [], function( text, key ) {
                                    switch (key){
                                        case 'date|asc':
                                            filters[ key ] = {
                                                text: text,
                                                props : {
                                                    orderby: false,
                                                    wpmf_orderby: 'date',
                                                    order: 'ASC',
                                                },
                                            };
                                            break;
                                            
                                        case 'date|desc':
                                            filters[ key ] = {
                                                text: text,
                                                props : {
                                                    orderby: false,
                                                    wpmf_orderby: 'date',
                                                    order: 'DESC',
                                                },
                                            };
                                            break;
                                            
                                        case 'title|asc':
                                            filters[ key ] = {
                                                text: text,
                                                props : {
                                                    meta_key : '',
                                                    orderby: false,
                                                    wpmf_orderby: 'title',
                                                    order: 'ASC',
                                                },
                                            };
                                            break;
                                            
                                        case 'title|desc':
                                            filters[ key ] = {
                                                text: text,
                                                props : {
                                                    meta_key : '',
                                                    orderby: false,
                                                    wpmf_orderby: 'title',
                                                    order: 'DESC',
                                                },
                                            };
                                            break;
                                        
                                        case 'size|asc':
                                            filters[ key ] = {
                                                text: text,
                                                props : {
                                                    meta_key: 'wpmf_size',
                                                    orderby: false,
                                                    wpmf_orderby: 'meta_value_num',
                                                    order: 'ASC',
                                                },
                                            };
                                            break;
                                            
                                        case 'size|desc':
                                            filters[ key ] = {
                                                text: text,
                                                props : {
                                                    meta_key: 'wpmf_size',
                                                    orderby: false,
                                                    wpmf_orderby: 'meta_value_num',
                                                    order: 'DESC',
                                                },
                                            };
                                            break;    
                                            
                                        case 'filetype|asc':
                                            filters[ key ] = {
                                                text: text,
                                                props : {
                                                    meta_key: 'wpmf_filetype',
                                                    orderby: false,
                                                    wpmf_orderby: 'meta_value',
                                                    order: 'ASC',
                                                },
                                            };
                                            break;
                                        
                                        case 'filetype|desc':
                                            filters[ key ] = {
                                                text: text,
                                                props : {
                                                    meta_key: 'wpmf_filetype',
                                                    orderby: false,
                                                    wpmf_orderby: 'meta_value',
                                                    order: 'DESC',
                                                },
                                            };
                                            break;
                                            
                                    }
                                });
                            
                                filters.all = {
                                        text:  wpmflang_fillter.order_img_label,
                                        props: {
                                            orderby: 'title',
                                            order: 'ASC',
                                        },
                                        priority: 10
                                };
                                
                                this.filters = filters;
                            }
                    });
                    
                    // backup the method
                    var orig = wp.media.view.AttachmentsBrowser;

                    wp.media.view.AttachmentsBrowser = wp.media.view.AttachmentsBrowser.extend({
                            createToolbar: function() {
                                    // call the original method
                                    orig.prototype.createToolbar.apply(this,arguments);
                                    
                                    this.toolbar.set('mimetypetags', new wp.media.view.AttachmentFilters['wpmf_attachment_mimetype']({
                                            controller: this.controller,
                                            model:      this.collection.props,
                                            priority:   -90
                                    }).render() );
                                    
                                    // add our custom filter
                                    this.toolbar.set('sizetags', new wp.media.view.AttachmentFilters['wpmf_attachment_size']({
                                            controller: this.controller,
                                            model:      this.collection.props,
                                            priority:   -74
                                    }).render() );
                                    
                                    this.toolbar.set('weighttags', new wp.media.view.AttachmentFilters['wpmf_attachment_weight']({
                                            controller: this.controller,
                                            model:      this.collection.props,
                                            priority:   -74
                                    }).render() );
                                    
                                    this.toolbar.set('orderfoldertags', new wp.media.view.AttachmentFilters['wpmf_order_folder']({
                                            controller: this.controller,
                                            model:      this.collection.props,
                                            priority:   -74
                                    }).render() );
                                    
                                    this.toolbar.set('ordermediatags', new wp.media.view.AttachmentFilters['wpmf_order_media']({
                                            controller: this.controller,
                                            model:      this.collection.props,
                                            priority:   -74
                                    }).render() );
                            },
                    });
                    
                    //=========================================================================
                };
                FilterSizeWeight();
                
                wp.media.view.AttachmentsBrowser.prototype.on('ready',function(){
                    if(typeof wp.media.model.Query != "undefined"){
                        var defaultProps = wp.media.model.Query.defaultProps;
                        defaultProps['orderby'] = false;
                        
                        var Attachments = wp.media.model.Attachments
                        Attachments.all = new Attachments();
                        wp.media.query = function( props ) {
                            return new Attachments( null, {
                                    props: _.extend( _.defaults( props || {}, { orderby: false } ), { query: true } )
                            });
                        };
                    }
                        
                    if(wpmf_order_media && wpmf_order_media != ''){
                        $('.wpmf-order-media option[value="'+ wpmf_order_media +'"]').prop('selected',true).change();
                    }
                    
                    if(wpmf_order_f && wpmf_order_f != '' && $('[id^="__wp-uploader-id-"]:visible .wpmf-order-folder').val() == 'all'){
                        $('[id^="__wp-uploader-id-"]:visible .wpmf-order-folder option[value="'+ wpmf_order_f +'"]').prop('selected',true).change();
                    }
                    $('[id^="__wp-uploader-id-"]:visible .wpmf-order-folder').addClass('wpmf-order');
                });
                
            }else{
                if( typeof wpmf_size == "undefined" || typeof wpmf_weight == "undefined") return;

                var filter_size = '<select name="attachment_size" class="wpmf-attachment-size">';
                filter_size += '<option value="all" selected>'+ wpmflang_fillter.all_size_label +'</option>';
                $.each(wpmf_size,function(key){
                    if(this == size){
                        filter_size += '<option value="'+ this +'" selected>'+ this +'</option>';
                    }else{
                        filter_size += '<option value="'+ this +'">'+ this +'</option>';
                    }
                })

                filter_size += '</select>';
                
                var filter_weight = '<select name="attachment_weight" class="wpmf-attachment-weight">';
                filter_weight += '<option value="all" selected>'+ wpmflang_fillter.all_weight_label +'</option>';
                $.each(wpmf_weight,function(key,text){
                    var labels = text[0].split('-');
                    if(text[1] == 'kB'){
                        var label = (labels[0]/1024)+' kB-'+(labels[1]/1024)+' kB';
                    }else{
                        var label = (labels[0]/(1024*1024))+' MB-'+(labels[1]/(1024*1024))+' MB';
                    }
                    if(text[0] == weight){
                        filter_weight += '<option value="'+ text[0] +'" selected>'+ label +'</option>';
                    }else{
                        filter_weight += '<option value="'+ text[0] +'">'+ label +'</option>';
                    }
                })

                filter_weight += '</select>';
                
                var filter_order = '<select name="folder_order" id="media-order-folder" class="wpmf-order-folder wpmf-order">';
                filter_order += '<option value="name-asc" selected>'+ wpmflang_fillter.order_folder_label +'</option>';
                $.each(order_folder,function(key,text){
                    if(key == order_f){
                        filter_order += '<option value="'+ key +'" selected>'+ text +'</option>';
                    }else{
                        filter_order += '<option value="'+ key +'">'+ text +'</option>';
                    }
                })

                filter_order += '</select>';
                
                $('.wpmf-categories').after(filter_size);
                $('.wpmf-attachment-size').after(filter_weight);
                $('.wpmf-attachment-weight').after(filter_order);
                
                if(wpmf_order_f && wpmf_order_f != ''){
                    $('.wpmf-order-folder option[value="'+ wpmf_order_f +'"]').prop('selected',true);
                }
            }
        }
    });
}(jQuery));