function aliasFormProcess(form)
{
	var container = null;
        
        if (form.attr('action').indexOf('send-message') > 0) {
            container = $('#form_message');
            container.data('loaded', false);
        } else {
            container = $('#form_alias');
        }
	container.html(log_loading_html);
	container.load(form.attr('action'), form.formToArray(true));
}

$(document).ready(function() {
	
	/* {{{ Set default reaction on ajax-links click */
	$('a.ajax').click(function(){return false;});
	/* }}} */
	
	/* {{{ Setup "Send Message" modal dialog */
	if ($('#messaging_block').length) {
		$('#form_message').dialog({
			autoOpen: false,
			modal: true,
			overlay: {opacity: 0.5, background: "white"},
			title: "Сообщение автору",
			width: "300px",
			height: "275px"
		});
		$('#form_message_switch').click(function () {
			var container = $('#form_message');
			if (!container.data('loaded')) {
				container.html(log_loading_html);
				container.load('/send-message', null, function(){container.data('loaded', true);});
			}
			container.show().dialog('open');
		    return false;
		});
	}
	/* }}} */

    $('#personal-inf-selector a.inf').click(function(){
        $.php($(this).attr('href'),{});
        return false;
    });
    $('#personal-inf-friend-selector-close-btn').unbind('click').click(function(){
        $('#personal-inf-selector').hide();
        return false;
    });
    $('#personal-inf-friend-selector-close-icon').unbind('click').click(function(){
        $('#personal-inf-selector').hide();
        return false;
    });
    $('#personal-friend-add').click(function() {
        $('#personal-inf-talk-selector').hide();
        var list = $('#personal-inf-selector div.item');
        if (list.length == 0) return false;
        if (list.length > 1) {
            var selector = $('#personal-inf-selector');
            var coord = $(this).offset();
            selector.css('top', coord.top);
            selector.css('left', coord.left - selector.outerWidth());
            selector.toggle();
        } else {
            $('a.friend-add', list[0]).click();
        }
        return false;
    });
    $('#personal-friend-del').click(function(){
        var list = $('#personal-inf-selector div.item');
        if (list.length == 0) return false;
        $('a.friend-del', list[0]).click();
        return false;
    });
    $('#personal-link-more').click(function(){
        $('#friends_block').append(log_loading_html);
        $.php($(this).attr('href'),{});
        return false;
    });
    $('#personal-talk-start').click(function(){
        $('#personal-inf-selector').hide();
        var list = $('#personal-inf-talk-selector div.item');
        if (list.length == 0) return false;
        if (list.length > 1) {
            var selector = $('#personal-inf-talk-selector');
            var coord = $(this).offset();
            selector.css('top', coord.top);
            selector.css('left', coord.left - selector.outerWidth());
            selector.toggle();
        } else {
            $('a.inf', list[0]).click();
        }
        return false;
    });
    IiiPersonalCommon.talk.init();
    IiiPersonalCommon.friends.list.calculate();
    $(':radio, select', '#export').change(function(){
        var el = $(this);
        var cntr = el.parents('.export-inf');
        var color = $(':radio:checked',cntr).val();
        var pos = $('select.position-selector', cntr).val();
        var size = $('select.size-selector', cntr).val();
        var id = cntr.parents('.export-cntr').attr('id');
        var w = IiiPersonalCommon.inf.size[pos][size]['w'];
        var h = IiiPersonalCommon.inf.size[pos][size]['h'];
        switch (id) {
            case 'settings00':
            case 'settings01':
            case 'settings04':
            case 'settings05':
            case 'settings06':
            case 'settings010':
                $('textarea','#'+id).each(function(){
                    var txt = $(this).val();
                    txt = txt.replace(/skin_color=(0x[A-Fa-f0-9]{6})/i, "skin_color="+color)
                             .replace(/vertical_layout=[01]/i, "vertical_layout="+pos)
                             .replace(/\sheight="\d+"/, ' height="'+h+'"')
                             .replace(/\swidth="\d+"/, ' width="'+w+'"');
                    $(this).val(txt);
                });
                break;
            case 'settings03':
                var ta = $('textarea','#'+id);
                var txt = ta.val()
                            .replace(/flash=\d+,\d+,/, 'flash='+w+','+h+',')
                            .replace(/skin_color=(0x[A-Fa-f0-9]{6})/i, "skin_color="+color)
                            .replace(/vertical_layout=[01]/i, "vertical_layout="+pos)
                            ;
                ta.val(txt);
                break;
            case 'settings07':
                var ta = $('textarea','#'+id);
                var txt = ta.val()
                             .replace(/skin_color=(0x[A-Fa-f0-9]{6})/ig, "skin_color="+color)
                             .replace(/vertical_layout=[01]/ig, "vertical_layout="+pos)
                             .replace(/\sheight="\d+"/ig, ' height="'+h+'"')
                             .replace(/\swidth="\d+"/ig, ' width="'+w+'"');
                ta.val(txt);
                break;
            case 'settings08':
                var ta = $('#code_wp0','#'+id);
                var txt = ta.val()
                             .replace(/skin_color%3D(0x[A-Fa-f0-9]{6})/i, "skin_color%3D"+color)
                             .replace(/vertical_layout%3D[01]/i, "vertical_layout%3D"+pos)
                             .replace(/&h=\d+/, '&h='+h)
                             .replace(/&w=\d+/, '&w='+w)
                             .replace(/;width:\d+/, ';width:'+w+'');
                ta.val(txt);
                ta = $('#code_wp1','#'+id);
                txt = ta.val()
                             .replace(/skin_color=(0x[A-Fa-f0-9]{6})/i, "skin_color="+color)
                             .replace(/vertical_layout=[01]/i, "vertical_layout="+pos)
                             .replace(/\sheight="\d+"/, ' height="'+h+'"')
                             .replace(/\swidth="\d+"/, ' width="'+w+'"');
                ta.val(txt);
                break;
        }
    });

});

IiiPersonalCommon = {
    friends: {
        list: {
            calculate: function() {
                var w = 0;
                $('#friends-wrapper .item:visible').each(function(){
                    w = w + $(this).outerWidth();
                });
                $('#friends-wrapper').width(w + 10);
            },
            afterLoad: function() {
                IiiPersonalCommon.friends.list.calculate();
                $('#friends').scrollTo('max',1000);
                if (typeof(initFriendsList) == 'function') {
                    initFriendsList();
                }
            }
        }
    },
    inf: {
        size: {
            0: {0:{w:220,h:140},1:{w:355,h:188},2:{w:532,h:282}},
            1: {0:{w:180,h:270},1:{w:188,h:355},2:{w:282,h:532}}
        }
    },
    talk: {
        init: function() {
            $('a.inf', '#personal-inf-talk-selector').click(function(){
                var coord = $('#personal-talk-start').offset();
                var win = $('#form_talk');
                win.css('top', coord.top - 25 + 'px');
                win.css('left',coord.left - 200 + 'px');
                $('#personal-inf-talk-selector').hide();
                IiiPersonalCommon.talk.show($(this).attr('href'));
                return false;
            });
            $('#personal-inf-talk-selector-close-btn').unbind('click').click(function(){
                $('#personal-inf-talk-selector').hide();
                return false;
            });
            $('#personal-inf-talk-selector-close-icon').unbind('click').click(function(){
                $('#personal-inf-talk-selector').hide();
                return false;
            });
        },
        show: function(url) {
            $('#form_talk').html(log_loading_html).show();
            if (url == null) {
                url = webSrvs.personal.talkWinUrl;
            }
            $.php(url, {});
        },
        closeWin: function() {
            if (IiiPersonalCommon.talk.timer != false) {
                clearInterval(IiiPersonalCommon.talk.timer);
                IiiPersonalCommon.talk.timer = false;
            }
            $('#form_talk').hide();
            $('#personal-talk-dialog-area').data('replicas', []);
        },
        initWin: function(uuid) {
            $('#personal-talk-editor-close-icon').unbind('click').click(function(){
                IiiPersonalCommon.talk.closeWin();
                return false;
            });
            $('#personal-talk-editor-cancel').unbind('click').click(function(){
                IiiPersonalCommon.talk.closeWin();
                return false;
            });
            $('#personal-talk-form').unbind('submit').submit(function(){
                if ($('#personal-talk-replica').val().replace(/\s+/g, '').length == 0) {
                    $('#personal-talk-replica').val('').bt('Необходимо ввести первую реплику',{
                        trigger: ['none'],
                        positions: ['top'],
                        spikeLength: 35,
                        fill: 'rgba(255, 0, 0, .8)'
                    }).btOn();
                    return false;
                }
                $('#personal-talk-dialog-area').empty().append(log_loading_html);
                $('#personal-talk-goto-log').hide();
                $('#personal-talk-submit').attr('disabled','disabled');
                $('#personal-talk-editor-cancel').attr('disabled','disabled');
                $.php(webSrvs.personal.talkSubmitUrl,{replic:$('#personal-talk-replica').val(),inf:uuid});
                return false;
            });
            var el = $('#personal-talk-replica');
            el.bt('Введите реплику своего инфа и начните разговор',{
                trigger: ['none','focus mouseover click'],
                positions: ['top','right'],
                spikeLength: 35
            });
            el.btOn();
            el.unbind('focus').focus(function(){
                $(this).btOff();
            });
        },
        blocked: function() {
            $('#form_talk').hide();
            $.prompt('Превышен суточный лимит разговоров',{zIndex: 1005, top: '45%'});
            $('#personal-talk-submit').removeAttr('disabled');
            $('#personal-talk-dialog-area').empty();
        },
        startDialog: function(key, url) {
            IiiPersonalCommon.talk.sessionKey = key;
            $('#personal-talk-goto-log').data('url',url).unbind('click').click(function(){
                window.location.href = $('#personal-talk-goto-log').data('url');
            });
            $('#personal-talk-dialog-area')
                .data('replicas', [])
                .data('done',false)
                .data('dialog-offset',0)
                .data('dialog.cancel', false);
            $('#personal-talk-editor-cancel').unbind('click').click(function(){
                $('img', '#personal-talk-dialog-area').remove();
                if (IiiPersonalCommon.talk.timer != false) {
                    clearInterval(IiiPersonalCommon.talk.timer);
                    IiiPersonalCommon.talk.timer = false;
                }
                $('#personal-talk-dialog-area').data('replicas', []).data('dialog.cancel', true);
                $('#personal-talk-goto-log').show();
                $('#personal-talk-submit').removeAttr('disabled');
                $('#personal-talk-editor-cancel').unbind('click').click(function(){
                    IiiPersonalCommon.talk.closeWin();
                    return false;
                }).val('Закрыть');
                return false;
            }).val('Отмена').removeAttr('disabled');
            
            IiiPersonalCommon.talk.timer = setInterval(function(){IiiPersonalCommon.talk.getReplicas()},1000);
            IiiPersonalCommon.talk.say();
        },
        getReplicas: function() {
            if (!$('#personal-talk-dialog-area').data('dialog.cancel')) {
                $.php(webSrvs.personal.talkGetReplicasUrl,{key:IiiPersonalCommon.talk.sessionKey});
            }
        },
        push: function(errno, replicas, done) {
            if (errno == -1) {
                return false;
            }
            var el = $('#personal-talk-dialog-area');
            var rep = el.data('replicas');
            if (errno == -2) {
                el.data('replicas', replicas);
            } else {
                el.data('replicas', rep.concat(replicas));
            }
            if (done) {
                clearInterval(IiiPersonalCommon.talk.timer);
                IiiPersonalCommon.talk.timer = false;
                el.data('done', true);
            }
        },
        say: function() {
            var el = $('#personal-talk-dialog-area');
            var r  = el.data('replicas');
            var d  = el.data('dialog-offset');
            var delay = 1500;
            if (r.length > d) {
                $('img', '#personal-talk-dialog-area').remove();
                var repl = $(r[d]);
                var str = repl.find('span').remove().end().text();
                el.append(r[d]).data('dialog-offset',d+1).scrollTo('max',300);
                delay = str.length * 50;
            }
            if (delay < 1500) {
                delay = 1500;
            }
            if ((r.length == d) && el.data('done')) {
                $('#personal-talk-goto-log').show();
                $('#personal-talk-submit').removeAttr('disabled');
                $('#personal-talk-dialog-area').data('replicas', []).data('done',false).data('dialog-offset',0);
                el.append('<div class="odd" style="text-align:center;"><span>диалог окончен</span></div>').scrollTo('max',300);
                $('#personal-talk-editor-cancel').unbind('click').click(function(){
                    IiiPersonalCommon.talk.closeWin();
                    return false;
                }).val('Закрыть');
            } else {
                if ($('#form_talk:visible').length > 0) {
                    setTimeout('IiiPersonalCommon.talk.say()', delay);
                }
            }
        },
        sessionKey: '',
        timer: false
    }
}