Вход Регистрация
Файл: js/xenforo/full/smiley_editor.js
Строк: 115
<?php
/** @param {jQuery} $ jQuery Object */
!function($, window, document, _undefined)
{
    
/**
     * Activates the XenForo smiley editor form
     *
     * @param jQuery form.SmileyEditor[data-smiley-output]
     */
    
XenForo.SmileyEditor = function($form)
    {
        var 
$output = $($form.data('smiley-output')),

            
$url     = $form.find('input[name="image_url"]'),
            
$sprite  = $form.find('input[name="sprite_mode"]'),
            
$w       = $form.find('input[name="sprite_params[w]"]'),
            
$h       = $form.find('input[name="sprite_params[h]"]'),
            
$x       = $form.find('input[name="sprite_params[x]"]'),
            
$y       = $form.find('input[name="sprite_params[y]"]');

        if (!
$output.length)
        {
            
console.warn('Unable to locate the smiley output element as specified by data-smiley-output on the form %o', $form);
            return;
        }

        
$form.find('input').not('input[type=button]').not('input[type=submit]').bind('change', function(e)
        {
            var 
$url = $form.find('#ctrl_image_url')

            if (
$sprite.is(':checked'))
            {
                
$output.attr('src', 'styles/default/xenforo/clear.png').css(
                {
                    
width: $w.val(),
                    
height: $h.val(),
                    
background: 'url(' + $url.val() + ') no-repeat ' + $x.val() + 'px ' + $y.val() + 'px'
                
});
            }
            else
            {
                
$output.attr('src', $url.val()).css(
                {
                    
width: 'auto',
                    
height: 'auto',
                    
background: 'none'
                
});
            }
        });
    };

    
// *********************************************************************
    
    /**
     * Handles hidden options and serialization of smilie data form input fields
     *
     * @param jQuery form#SmilieImportForm
     */
    
XenForo.SmilieImportForm = function($form)
    {
        
$form.find('input.Hider').change(function(e)
        {
            var 
$target = $($(this).data('target'));
            
            if (
this.checked)
            {
                
$target.xfFadeDown(XenForo.speed.fast);
            }
            else
            {
                
$target.xfHide();
            }
        });
        
        
$form.bind(
        {
            
AutoValidationBeforeSubmit: function(e)
            {                
                var 
inputQueryString = $form.serialize(),
                    
$inputs = $form.find('input:not(input[type=hidden]), select, textarea'),
                    
$dataInput = $('<input type="hidden" name="_xfSmilieImportData" />');

                
$inputs.each(function()
                {
                    var 
$this = $(this);
                    
$this.data('attr-name', $this.attr('name'));
                    
$this.removeAttr('name');
                });

                
$dataInput.val(inputQueryString).appendTo($form);

                
setTimeout(function()
                {
                    
$inputs.each(function()
                    {
                        var 
$this = $(this);
                        
$this.attr('name', $this.data('attr-name'));
                    });

                    
$dataInput.remove();
                }, 
100);
            },
            
            
AutoValidationError: function(e)
            {
                var 
$target = $(e.target);
                
                if (
$target.is(':hidden'))
                {
                    
$target.closest('.advanced').show();
                }
            }
        });
    }

    
// *********************************************************************

    
XenForo.register('form.SmileyEditor', 'XenForo.SmileyEditor');
    
    
XenForo.register('#SmilieImportForm', 'XenForo.SmilieImportForm');
}
(
jQuery, this, document);
?>
Онлайн: 2
Реклама