function initPaginator(object_id, pages_count, page, callback)
{
    if (callback == undefined)
    {
        callback = paginatorRedirect;
    }

    var params = {
        count 		        : pages_count,
        start 		        : page,
        display                 : 31,
        border			: false,
        text_color  		: '#888',
        background_color    	: '#EEE',
        text_hover_color  	: 'black',
        background_hover_color	: '#CFCFCF',
        onChange                : function(page) {
            callback(page)
        }
    };

    $("#" + object_id).paginate(params);
}


function paginatorRedirect(page)
{
    var url = location.href;

    if (url.indexOf("page") == -1)
    {
        url+= "/page/" + page;    
    }
    else
    {
        var page_url = /page\/[0-9]+/.exec(url);

        url = url.replace(page_url, "page/" + page)
    }
    
    location.href = url;
}


function trim(str, chars)
{
    return ltrim(rtrim(str, chars), chars);
}


function ltrim(str, chars)
{
    chars = chars || "\\s";
    return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
}


function rtrim(str, chars)
{
    chars = chars || "\\s";
    return str.replace(new RegExp("[" + chars + "]+$", "g"), "");
}


function showLoader()
{
    $("html").mask("Подождите пожалуйста...");
}


function hideLoader()
{
    $("html").unmask();
}


function showMsg(msg, delay)
{
    delay = delay == undefined ? 2500 : delay;

    var options = {
        id: 'message_from_top',
        position: 'top',
        size: 50,
        backgroundColor: '#2488A6',
        delay: delay,
        speed: 500,
        fontSize: '20px',
        style: 'color:red'
    };

    $.showMessage(msg, options);
}




function initMulticheckbox(parent_ident)
{
    $('.multi_checkbox', $(parent_ident)).click(function()
    {
        $('input[type=checkbox]', $(parent_ident)).each(function()
        {
            if (!$(this).is('.multi_checkbox'))
            {
                this.checked = !this.checked;
            }
        });
    });
}




