/* menu user*/
function show_sms_leadership_rules() {
    var div = document.getElementById('sms_leadership_rules');
    if (div) {
        if(div.style.display == 'none') {
            div.style.display = '';
        } else {
            div.style.display = 'none';
        }
    }
}

var group_selector;
function create_group_selector(header, journal_email, is_community) {
    var HTML = [];
    HTML.push('<form action="' + PerlVar_ACTION_DIR + 'jaddfriend" class="m0" id="group_selector_form" onsubmit="return journal_addfriend()">');
    HTML.push('<input type="hidden" name="user" value="' + journal_email + '" />');
    HTML.push('<input type="hidden" name="participate" value="' + (is_community ? 1 : 0) + '" />');
    HTML.push('<input type="hidden" name="back" value="' + PerlVar_back_value + '">');
    HTML.push('<div class="p0"><h2 class="m0 fll">' + header + '</h2><a href="javascript:hide_group_selector();" class="flr"><img height="8" border="0" width="8" title="Закрыть" src="http://img.mail.ru/mail/ru/images/blogs/close_ifr.gif" /></a></div>');
    HTML.push('<div style="clear: both"></div>');
    
    HTML.push('<div id="work_area">');
    if (!is_community) {
        HTML.push('<div style="font-size: 85%; color: #656972;">Предложить пользователю дружбу на проектах Блоги и Мой Мир</div>');
        HTML.push('<div class="mt15 mb10">Сообщение<br /><textarea name="message" wrap="soft" style="width: 100%; border: none; overflow-x: auto; overflow-y: auto; height: 55px; padding: 3px; border: 1px solid #ccc;"></textarea></div>');
        HTML.push('<div class="t90">Дополнительно</div>');
    }
    HTML.push('<div class="t90"><label><input type="checkbox" name="friendlenta" checked="checked" value="" />Читать в ленте</label><span id="subscribe_span"><br /><input type="checkbox" id="subscribe" name="subcribe" checked="' + (PerlVar_active_subscribed ? 'checked' : '') + '" value="1" /><label for="subscribe">Подписаться на обновления</label></span></div>');
    HTML.push('<div><input type="submit" value="OK" /><input type="button" value="Отмена" onclick="return hide_group_selector();" /></div>');
    HTML.push('</div>'); // #work_area

    HTML.push('<div id="result_area" style="display: none;">');
    HTML.push('<div id="friend_message"></div><div><input type="button" value="Закрыть" onclick="return hide_group_selector();" /></div>');
    HTML.push('</div>'); // #result_area

    HTML.push('</div></form>');

    group_selector = document.createElement('div');
    group_selector.id = 'group_selector';
    group_selector.className = 'popup_div';
    group_selector.innerHTML = HTML.join('');
}

function show_participate_group_selector(div_name, journal_email) {
    if (!group_selector) create_group_selector('Вступить и добавить', journal_email, 1);
    if (group_selector) {
        var for_group_selector = document.getElementById(div_name);
        if (for_group_selector) {
            for_group_selector.appendChild(group_selector);
            //var header = document.getElementById('group_selector_header');
            //if (header) header.innerHTML = 'Вступить и добавить';
        }
    }
    return false;
}

function reg_evt(evt) { evt_a = evt; }

function show_friend_group_selector(div_name, journal_email) {
    if (!group_selector) create_group_selector('Предложить дружбу', journal_email, 0);
    if (group_selector) {
        var for_group_selector = document.getElementById(div_name);
        if (for_group_selector) {
            for_group_selector.appendChild(group_selector);
        }
        var subscr_span = document.getElementById('subscribe_span');
        if (subscr_span) {
            subscr_span.style.display = PerlVar_active_subscribed ? 'none' : '';
        }
    }
    bubble();
    return false;
}

function hide_group_selector() {
    if (group_selector) {
        if (group_selector.parentNode)
            group_selector.parentNode.removeChild(group_selector);
    }
}

function journal_subscribe(remove) {
    var link = document.getElementById('subscr_link');
    var link2 = document.getElementById('subscr_link2');
    if (link && link2) {
        link2.innerHTML = 'Выполняется...';
        link.onclick = function() { return false; };
        link2.onclick = function() { return false; };
    }
    perl_posts_comments_subscribe(1, remove, 0, journal_subscribe_callback);
    return false;
}

function journal_subscribe_callback(remove) {
    if (remove<0) return;
    var link = document.getElementById('subscr_link');
    var link2 = document.getElementById('subscr_link2');
    if (link && link2) {
        if (remove) {
            PerlVar_active_subscribed = 0;
            if (Theme_tmpl) {
                link.innerHTML = '<img src="http://img.mail.ru/r/blogs/ico_subscribe.png" class="IEpng" width="16" height="16" border="0" align="absmiddle" vspace="3">';
            } else {
                link.innerHTML = '<img src="http://img.mail.ru/r/blogs/ico_subscribe.png" class="IEpng ico" width="16" height="16" align="absmiddle" />';
            }
            link2.innerHTML = 'Подписаться на обновления';
            link.href = PerlVar_ACTION_DIR + 'jcommentssubscribe?user=' + PerlVar_JournalEmail + '&posts=1&' + PerlVar_back;
            link2.href = PerlVar_ACTION_DIR + 'jcommentssubscribe?user=' + PerlVar_JournalEmail + '&posts=1&' + PerlVar_back;
            link.onclick = function() { return journal_subscribe(0); };
            link2.onclick = function() { return journal_subscribe(0); };
        } else {
            PerlVar_active_subscribed = 1;
            if (Theme_tmpl) {
                link.innerHTML='<img src="http://img.mail.ru/r/blogs/ico_unsubscribe.png" class="IEpng" width="16" height="16" border="0" align="absmiddle" vspace="3" />';
            } else {
                link.innerHTML='<img src="http://img.mail.ru/r/blogs/ico_unsubscribe.png" class="IEpng ico" width="16" height="16" align="absmiddle" />';
            }
            link2.innerHTML = 'Отписаться от обновлений';
            link.href = PerlVar_ACTION_DIR + 'jcommentssubscribe?user=' + PerlVar_JournalEmail + '&remove=1&posts=1&' + PerlVar_back;
            link2.href = PerlVar_ACTION_DIR + 'jcommentssubscribe?user=' + PerlVar_JournalEmail + '&remove=1&posts=1&' + PerlVar_back;
            link.onclick = function() { return journal_subscribe(1); };
            link2.onclick = function() { return journal_subscribe(1); };
        }
    }
}

// elem - position capcha div around this element
// action - action of capcha form
function journal_addfriend(remove, user_text, friendlenta, elem, action) {
    var link = document.getElementById('friend_link');
    var link2 = document.getElementById('friend_link1');
    if (remove) {
        if (link && link2) {
            link2.innerHTML = 'Выполняется...';
            link.onclick = function() { return false; };
            link2.onclick = function() { return false; };
        }
        perl_add_friend(remove, journal_addfriend_callback);
    } else {
        var form = document.getElementById('group_selector_form');
        if (form) {
            if (form.participate.value==1) return true;

            var subscribe = 0;
            var subscr_element = document.getElementById('subscribe');
            if (subscr_element && subscr_element.checked) subscribe = 1;

            if (subscribe && !PerlVar_active_subscribed) journal_subscribe(0);
            var link = document.getElementById('friend_link');
            var link2 = document.getElementById('friend_link1');
            if (!link || !link2) return;

            link2.innerHTML = 'Предложение отправлено';
            link.onclick = function() { return false; };
            link2.onclick = function() { return false; };

            var user_text = form.message.value;
            var friendlenta = (form.friendlenta.checked ? 1 : 0);

            journal_call_addfriend(user_text, friendlenta, link2, link2.href);
        } else {
            journal_call_addfriend(user_text, friendlenta, elem, action);
        }
    }
    return false;
}

function journal_call_addfriend(user_text, friendlenta, elem, action) {
    if (!elem || !action) throw new Error('wrong syntax');
    perl_get_friendship_capcha(
        function (capcha_id) {
            if (capcha_id) {
                var coor = get_position(elem);
                var HTML = [];
                HTML.push('<div><a onclick="hide_capcha(); return false;" href=""><img src="http://img.mail.ru/mail/ru/images/blogs/close_help.gif" height="7" width="7" border="0" style="margin: 5px; float: right;"/></a>');
                HTML.push('<div style="clear:both;"><img src="http://' + PerlVar_BlogsPerlHost + '/cgi-bin/journal/get_image?id=' + capcha_id + '" width="151" border="0" vspace="0" hspace="0" height="51" alt="" id="Image_id" /></div>');
                HTML.push('<div style="clear:both;">Число на картинке:</div>');
                HTML.push('<div style="clear:both; display:inline;"><form action="' + action + '" method="get" id="capchaForm" onsubmit="return check_friendship_capcha(\'' + user_text + '\', ' + friendlenta + ');"><input type="hidden" name="ImageID" value="' + capcha_id + '" id="ImageID_id" /><input type="text" name="ImageAnswer" id="ImageAnswer_id" /><input type="submit" value="OK" /></form></div></div>');

                var div = document.getElementById('capcha_popup');
                if (!div) return;
                div.innerHTML = HTML.join('');
                div.style.top = (coor.top + elem.offsetHeight - 30) + 'px';
                var left = coor.left; //- div.offsetWidth + element.offsetWidth;
                if (left < 0) left = 0;
                div.style.left = left + 'px';
                div.style.visibility = 'visible';

                //if (event.stopPropagation) event.stopPropagation();
                //event.cancelBubble = true;
            } else {
                perl_add_friend(0, user_text, friendlenta, journal_addfriend_callback);
            }
        }
    );
}

function check_friendship_capcha(user_text, friendlenta) {
    var ImageID = document.getElementById('ImageID_id').value;
    var ImageAnswer = document.getElementById('ImageAnswer_id').value;
    perl_check_friendship_capcha(
        ImageID, ImageAnswer, 0, user_text, friendlenta, function (ok, leave, err) {
            if (ok) {
                journal_addfriend_callback(leave, err); // save call to server -> save a kitten
                hide_capcha();
            } else {
                perl_get_friendship_capcha(
                    function (capcha_id) {
                        if (capcha_id) {
                            document.getElementById('Image_id').src = 'http://' + PerlVar_BlogsPerlHost + '/cgi-bin/journal/get_image?id=' + capcha_id;
                            document.getElementById('ImageID_id').value = capcha_id;
                        }
                    }
                );
                alert('Неверно введён код защиты.');
            }
        }
    );
    return false;
}

function journal_addfriend_callback(leave, err) {
    if (leave<0) return;
    err = parseInt(err);
    var err_message;
    if (err==0) err_message = 'Вы стали взаимными друзьями.';
    if (err==1 || err==4) err_message = 'Лимит отправки приглашений дружбы исчерпан. Попробуйте повторить попытку через 20 минут.';
    if (err==2) err_message = 'Этот мир закрыт для вас.';
    if (err==3) err_message = 'Приглашение успешно отправлено.';
    if (err==5) err_message = 'Вы уже предлагали дружбу этому пользователю.';
    if (err==6) err_message = 'Этот пользователь в вашем черном списке.';
    if (err==7) err_message = 'Вы не можете предложить дружбу этому пользователю.';
    if (err) leave = !leave;

    var link = document.getElementById('friend_link');
    var link2 = document.getElementById('friend_link1');
    if (link && link2) {
        if (err_message) {
            var message_div = document.getElementById('friend_message');
            var work_area = document.getElementById('work_area');
            var result_area = document.getElementById('result_area');

            message_div.innerHTML = err_message;
            work_area.style.display = 'none';
            result_area.style.display = '';
        }
        if (leave) {
            
        } else {
            if (Theme_tmpl) {
                link.innerHTML='<img src="http://img.mail.ru/mail/ru/images/blogs/ico_deletefriend.gif" width="16" height="16" border="0" align="absmiddle" vspace="3" />';
            } else {
                link.innerHTML='<img src="http://img.mail.ru/r/blogs/ico_deletefriend.gif" class="ico" width="16" height="16" align="absmiddle" />';
            }
            link2.innerHTML = 'Удалить из Друзей';
            link.href = 'http://my.mail.ru/my/addfriend?broke=' + PerlVar_JournalEmail + '&' + PerlVar_back;
            link2.href = 'http://my.mail.ru/my/addfriend?broke=' + PerlVar_JournalEmail + '&' + PerlVar_back;
            link.onclick = function() { return true };
            link2.onclick = function() { return true };
        }
    } else {
        if (err_message) alert(err_message);
    }
}

function journal_read(read) {
    var link = document.getElementById('lenta_link');
    var link2 = document.getElementById('lenta_link2');
    if (link && link2) {
        link2.innerHTML = 'Выполняется...';
        link.onclick = function() { return false; };
        link2.onclick = function() { return false; };
    }
    perl_lenta_read(read, journal_read_callback);
    return false;
}

function journal_read_callback(read) {
    var link = document.getElementById('lenta_link');
    var link2 = document.getElementById('lenta_link2');
    if (link && link2) {
        if (read) {
            if (Theme_tmpl) {
                link.innerHTML='<img src="http://img.mail.ru/mail/ru/images/blogs/i_favorite.gif" class="IEpng" width="16" height="16" border="0" align="absmiddle" vspace="3" />';
            } else {
                link.innerHTML='<img src="http://img.mail.ru/mail/ru/images/blogs/i_favorite.gif" class="IEpng ico" width="16" height="16" align="absmiddle" />';
            }
            link2.innerHTML = 'Читать в ленте';
        } else {
            if (Theme_tmpl) {
                link.innerHTML = '<img src="http://img.mail.ru/mail/ru/images/blogs/i_del.gif" class="IEpng" width="16" height="16" border="0" align="absmiddle" vspace="3" />';
            } else {
                link.innerHTML = '<img src="http://img.mail.ru/mail/ru/images/blogs/i_del.gif" class="IEpng ico" width="16" height="16" align="absmiddle" />';
            }
            link2.innerHTML = 'Не читать в ленте';
        }
        link.onclick = function() { return journal_read(read) };
        link2.onclick = function() { return journal_read(read) };
    }
}
