Вход Регистрация
Файл: upload-2031-rs1/admin/view/javascript/common.js
Строк: 367
<?php
function getURLVar(key) {
    var 
value = [];

    var 
query String(document.location).split('?');

    if (
query[1]) {
        var 
part query[1].split('&');

        for (
0part.lengthi++) {
            var 
data part[i].split('=');

            if (
data[0] && data[1]) {
                
value[data[0]] = data[1];
            }
        }

        if (
value[key]) {
            return 
value[key];
        } else {
            return 
'';
        }
    }
}

$(
document).ready(function() {
    
//Form Submit for IE Browser
    
$('button[type='submit']').on('click', function() {
        $(
"form[id*='form-']").submit();
    });

    
// Highlight any found errors
    
$('.text-danger').each(function() {
        var 
element = $(this).parent().parent();
        
        if (
element.hasClass('form-group')) {
            
element.addClass('has-error');
        }
    });
    
    
// Set last page opened on the menu
    
$('#menu a[href]').on('click', function() {
        
sessionStorage.setItem('menu', $(this).attr('href'));
    });

    if (!
sessionStorage.getItem('menu')) {
        $(
'#menu #dashboard').addClass('active');
    } else {
        
// Sets active and open to selected page in the left column menu.
        
$('#menu a[href='' + sessionStorage.getItem('menu') + '']').parents('li').addClass('active open');
    }

    if (
localStorage.getItem('column-left') == 'active') {
        $(
'#button-menu i').replaceWith('<i class="fa fa-dedent fa-lg"></i>');
        
        $(
'#column-left').addClass('active');
        
        
// Slide Down Menu
        
$('#menu li.active').has('ul').children('ul').addClass('collapse in');
        $(
'#menu li').not('.active').has('ul').children('ul').addClass('collapse');
    } else {
        $(
'#button-menu i').replaceWith('<i class="fa fa-indent fa-lg"></i>');
        
        $(
'#menu li li.active').has('ul').children('ul').addClass('collapse in');
        $(
'#menu li li').not('.active').has('ul').children('ul').addClass('collapse');
    }

    
// Menu button
    
$('#button-menu').on('click', function() {
        
// Checks if the left column is active or not.
        
if ($('#column-left').hasClass('active')) {
            
localStorage.setItem('column-left''');

            $(
'#button-menu i').replaceWith('<i class="fa fa-indent fa-lg"></i>');

            $(
'#column-left').removeClass('active');

            $(
'#menu > li > ul').removeClass('in collapse');
            $(
'#menu > li > ul').removeAttr('style');
        } else {
            
localStorage.setItem('column-left''active');

            $(
'#button-menu i').replaceWith('<i class="fa fa-dedent fa-lg"></i>');
            
            $(
'#column-left').addClass('active');

            
// Add the slide down to open menu items
            
$('#menu li.open').has('ul').children('ul').addClass('collapse in');
            $(
'#menu li').not('.open').has('ul').children('ul').addClass('collapse');
        }
    });

    
// Menu
    
$('#menu').find('li').has('ul').children('a').on('click', function() {
        if ($(
'#column-left').hasClass('active')) {
            $(
this).parent('li').toggleClass('open').children('ul').collapse('toggle');
            $(
this).parent('li').siblings().removeClass('open').children('ul.in').collapse('hide');
        } else if (!$(
this).parent().parent().is('#menu')) {
            $(
this).parent('li').toggleClass('open').children('ul').collapse('toggle');
            $(
this).parent('li').siblings().removeClass('open').children('ul.in').collapse('hide');
        }
    });
    
    
// Override summernotes image manager
    
$('button[data-event='showImageDialog']').attr('data-toggle''image').removeAttr('data-event');
    
    $(
document).delegate('button[data-toggle='image']''click', function() {
        $(
'#modal-image').remove();
        
        $(
this).parents('.note-editor').find('.note-editable').focus();
                
        $.
ajax({
            
url'index.php?route=common/filemanager&token=' getURLVar('token'),
            
dataType'html',
            
beforeSend: function() {
                $(
'#button-image i').replaceWith('<i class="fa fa-circle-o-notch fa-spin"></i>');
                $(
'#button-image').prop('disabled'true);
            },
            
complete: function() {
                $(
'#button-image i').replaceWith('<i class="fa fa-upload"></i>');
                $(
'#button-image').prop('disabled'false);
            },
            
success: function(html) {
                $(
'body').append('<div id="modal-image" class="modal">' html '</div>');
    
                $(
'#modal-image').modal('show');
            }
        });    
    });
    
    
// Image Manager
    
$(document).delegate('a[data-toggle='image']''click', function(e) {
        
e.preventDefault();
        
        $(
'.popover').popover('hide', function() {
            $(
'.popover').remove();
        });
                    
        var 
element this;
        
        $(
element).popover({
            
htmltrue,
            
placement'right',
            
trigger'manual',
            
content: function() {
                return 
'<button type="button" id="button-image" class="btn btn-primary"><i class="fa fa-pencil"></i></button> <button type="button" id="button-clear" class="btn btn-danger"><i class="fa fa-trash-o"></i></button>';
            }
        });
        
        $(
element).popover('show');

        $(
'#button-image').on('click', function() {
            $(
'#modal-image').remove();
        
            $.
ajax({
                
url'index.php?route=common/filemanager&token=' getURLVar('token') + '&target=' + $(element).parent().find('input').attr('id') + '&thumb=' + $(element).attr('id'),
                
dataType'html',
                
beforeSend: function() {
                    $(
'#button-image i').replaceWith('<i class="fa fa-circle-o-notch fa-spin"></i>');
                    $(
'#button-image').prop('disabled'true);
                },
                
complete: function() {
                    $(
'#button-image i').replaceWith('<i class="fa fa-pencil"></i>');
                    $(
'#button-image').prop('disabled'false);
                },
                
success: function(html) {
                    $(
'body').append('<div id="modal-image" class="modal">' html '</div>');
        
                    $(
'#modal-image').modal('show');
                }
            });
            
            $(
element).popover('hide', function() {
                $(
'.popover').remove();
            });
        });        
        
        $(
'#button-clear').on('click', function() {
            $(
element).find('img').attr('src', $(element).find('img').attr('data-placeholder'));
            
            $(
element).parent().find('input').attr('value''');
            
            $(
element).popover('hide', function() {
                $(
'.popover').remove();
            });
        });
    });
    
    
// tooltips on hover
    
$('[data-toggle='tooltip']').tooltip({container'body'htmltrue});

    
// Makes tooltips work on ajax generated content
    
$(document).ajaxStop(function() {
        $(
'[data-toggle='tooltip']').tooltip({container'body'});
    });
    
    
// https://github.com/opencart/opencart/issues/2595
    
$.event.special.remove = {
        
remove: function(o) {
            if (
o.handler) { 
                
o.handler.apply(thisarguments);
            }
        }
    }
    
    $(
'[data-toggle='tooltip']').on('remove', function() {
        $(
this).tooltip('destroy');
    });    
});

// Autocomplete */
(function($) {
    $.
fn.autocomplete = function(option) {
        return 
this.each(function() {
            
this.timer null;
            
this.items = new Array();
    
            $.
extend(thisoption);
    
            $(
this).attr('autocomplete''off');
            
            
// Focus
            
$(this).on('focus', function() {
                
this.request();
            });
            
            
// Blur
            
$(this).on('blur', function() {
                
setTimeout(function(object) {
                    
object.hide();
                }, 
200this);                
            });
            
            
// Keydown
            
$(this).on('keydown', function(event) {
                switch(
event.keyCode) {
                    case 
27// escape
                        
this.hide();
                        break;
                    default:
                        
this.request();
                        break;
                }                
            });
            
            
// Click
            
this.click = function(event) {
                
event.preventDefault();
    
                
value = $(event.target).parent().attr('data-value');
    
                if (
value && this.items[value]) {
                    
this.select(this.items[value]);
                }
            }
            
            
// Show
            
this.show = function() {
                var 
pos = $(this).position();
    
                $(
this).siblings('ul.dropdown-menu').css({
                    
toppos.top + $(this).outerHeight(),
                    
leftpos.left
                
});
    
                $(
this).siblings('ul.dropdown-menu').show();
            }
            
            
// Hide
            
this.hide = function() {
                $(
this).siblings('ul.dropdown-menu').hide();
            }        
            
            
// Request
            
this.request = function() {
                
clearTimeout(this.timer);
        
                
this.timer setTimeout(function(object) {
                    
object.source($(object).val(), $.proxy(object.responseobject));
                }, 
200this);
            }
            
            
// Response
            
this.response = function(json) {
                
html '';
    
                if (
json.length) {
                    for (
0json.lengthi++) {
                        
this.items[json[i]['value']] = json[i];
                    }
    
                    for (
0json.lengthi++) {
                        if (!
json[i]['category']) {
                            
html += '<li data-value="' json[i]['value'] + '"><a href="#">' json[i]['label'] + '</a></li>';
                        }
                    }
    
                    
// Get all the ones with a categories
                    
var category = new Array();
    
                    for (
0json.lengthi++) {
                        if (
json[i]['category']) {
                            if (!
category[json[i]['category']]) {
                                
category[json[i]['category']] = new Array();
                                
category[json[i]['category']]['name'] = json[i]['category'];
                                
category[json[i]['category']]['item'] = new Array();
                            }
    
                            
category[json[i]['category']]['item'].push(json[i]);
                        }
                    }
    
                    for (
i in category) {
                        
html += '<li class="dropdown-header">' category[i]['name'] + '</li>';
    
                        for (
0category[i]['item'].lengthj++) {
                            
html += '<li data-value="' category[i]['item'][j]['value'] + '"><a href="#">&nbsp;&nbsp;&nbsp;' category[i]['item'][j]['label'] + '</a></li>';
                        }
                    }
                }
    
                if (
html) {
                    
this.show();
                } else {
                    
this.hide();
                }
    
                $(
this).siblings('ul.dropdown-menu').html(html);
            }
            
            $(
this).after('<ul class="dropdown-menu"></ul>');
            $(
this).siblings('ul.dropdown-menu').delegate('a''click', $.proxy(this.clickthis));    
            
        });
    }
})(
window.jQuery);
?>
Онлайн: 2
Реклама