Вход Регистрация
Файл: templates/default/js/content.js
Строк: 66
<?php
var icms icms || {};

icms.content = (function ($) {

    var 
self this;

    
this.props_url '';
    
this.item_id   0;

    
this.onDocumentReady = function() {
        
this.select_base   = $('#category_id');
        
this.select_custom = $('#add_cats');
    };

    
this.initMultiCats = function(){

         var 
is_multi_cats this.select_base.length 0;
        if (!
is_multi_cats) { return; }

        
this.select_base.on('change', function (){

            var 
add_cats_data self.select_custom.val();
            var 
base_cat_id = +$(this).val();
            var 
idx false;

            
self.select_custom.val(false);
            $(
'option'self.select_custom).prop('disabled'false);

            for(var 
key in add_cats_data){
                if(
add_cats_data[key] == base_cat_id){
                    
idx key;
                }
                if(
add_cats_data[key] == ''){
                    
add_cats_data.splice(key1);
                }
            }
            if(
idx !== false){
                
add_cats_data.splice(idx1);
            }
            $(
'[value = '+base_cat_id+']'self.select_custom).prop('disabled'true);
            
self.select_custom.val(add_cats_data);
            
self.select_custom.trigger('chosen:updated');
        }).
triggerHandler('change');
    };

    
this.initProps = function(props_urlitem_id) {

        
this.props_url props_url;

        if (
typeof(item_id) !== 'undefined'){
            
this.item_id item_id;
        }

        
this.select_base.on('change', function(){
            
self.changePropsCat($(this).val(), $(self.select_custom).val());
        });

        
this.select_custom.on('change', function(){
            
self.changePropsCat($(self.select_base).val(), $(this).val());
        });

    };

    
this.loadProps = function(){
        
this.select_base.triggerHandler('change');
    };

    
this.changePropsCat = function(cat_idaddition_cats) {

        $(
'.icms-content-props__fieldset').closest('div').remove();

        if (!
cat_id && (!addition_cats || addition_cats.length === 0)) { return; }

        if (!
cat_id){ cat_id addition_cats[0]; }

        var 
url this.props_url '/' cat_id;

        $.
post(url, {item_idthis.item_idadd_catsaddition_cats}, function(result){

            
icms.events.run('icms_content_changepropscat'result);

            if (!
result.success) { return; }

            $(
'#tab-props').after($(result.html));

        }, 
'json');

    };

    return 
this;

}).
call(icms.content || {},jQuery);
?>
Онлайн: 1
Реклама