// Функция для определения размеров видимой области окна браузера
function screenSize() {
    var w, h; // Объявляем переменные, w - длина, h - высота
    w = (window.innerWidth) ? window.innerWidth : window.document.body.clientWidth;
    h = (window.innerHeight) ? window.innerHeight : window.document.body.clientHeight;
    return {w:w, h:h};
}
// Функция для добавления обработчика события
function addHandler(object, event, handler, useCapture) {
    if (object.addEventListener) {
        object.addEventListener(event, handler, useCapture ? useCapture : false);
    } else if (object.attachEvent) {
        object.attachEvent('on' + event, handler);
    } else alert("Add handler is not supported");
}
// Функция для удаления обработчика события
function removeHandler(object, event, handler) {
    if (object.removeEventListener) {
        object.removeEventListener(event, handler, false);
    } else if (object.detachEvent) {
        object.detachEvent('on' + event, handler);
    } else alert("Remove handler is not supported");
}
// Функция для предотвращения всплывания событий
function cancelBubbling(evt) {
    evt = evt || windiw.event;
    evt.cancelBubble = true;
}
// Меню со ссылкой "Добавить в друзья"
function userMenuLetsFriend(_link, evt, id) {
    // Заблокируем всплывание события
    cancelBubbling(evt);
    // Определение Gecko
    var ua = navigator.userAgent.toLowerCase();
    var isGecko = ua.indexOf("gecko") != -1;
    var mail = _link.href.substring(_link.href.indexOf("to=") + 3, _link.href.length);
    // Формируем HTML-код div-а
    var html = "<img class=\"pr3\" src=\"/img/add_friends.png\" width=\"16\" height=\"16\" alt=\"Добавить в друзья\" align=\"absmiddle\" style=\"background-color:#FFF9F2\" /><a href=\"/diary/profile.php?section=lets_friend&user=" + id + "\">Добавить в друзья</a><br>\
        <img class=\"pr3\" src=\"/img/Отправить сообщение.png\" width=\"18\" height=\"17\" alt=\"Написать письмо\" align=\"absmiddle\" style=\"background-color:#FFF9F2\" /><a href=\"/diary/profile.php?section=inmail&command=compose&reciever=" + id + "\">Отправить сообщение</a><br>\
    ";
    // Покажем div
    var div = document.getElementById("userDropDownId");
    div.innerHTML = html;
    // Задаем положение div-а
    div.style.top = absPosition(_link).y + _link.offsetHeight + "px";
    div.style.left = ((screenSize().w - absPosition(_link).x - div.offsetWidth > 0) ? absPosition(_link).x : absPosition(_link).x - div.offsetWidth + _link.offsetWidth) + "px";
    div.style.display = "";
    // Запрещаем всплывание событий при клике по ДИВу
    addHandler(div, "click", function(evt){cancelBubbling(evt);});
    return false;
}

// Меню со ссылкой "Убрать из друзей"
function userMenuNoFriend(_link, evt, id) {
    // Заблокируем всплывание события
    cancelBubbling(evt);
    // Определение Gecko
    var ua = navigator.userAgent.toLowerCase();
    var isGecko = ua.indexOf("gecko") != -1;
    var mail = _link.href.substring(_link.href.indexOf("to=") + 3, _link.href.length);
    // Формируем HTML-код div-а
    var html = "<img class=\"pr3\" src=\"/img/Удалить из друзей.gif\" width=\"16\" height=\"16\" alt=\"Удалить из друзей\" align=\"absmiddle\" style=\"background-color:#FFF9F2\" /><a href=\"/diary/profile.php?section=no_friend_more&user=" + id + "\">Удалить из друзей</a><br>\
        <img class=\"pr3\" src=\"/img/Отправить сообщение.png\" width=\"18\" height=\"17\" alt=\"Написать письмо\" align=\"absmiddle\" style=\"background-color:#FFF9F2\" /><a href=\"/diary/profile.php?section=inmail&command=compose&reciever=" + id + "\">Отправить сообщение</a><br>\
    ";
    // Покажем div
    var div = document.getElementById("userDropDownId");
    div.innerHTML = html;
    // Задаем положение div-а
    div.style.top = absPosition(_link).y + _link.offsetHeight + "px";
    div.style.left = ((screenSize().w - absPosition(_link).x - div.offsetWidth > 0) ? absPosition(_link).x : absPosition(_link).x - div.offsetWidth + _link.offsetWidth) + "px";
    div.style.display = "";
    // Запрещаем всплывание событий при клике по ДИВу
    addHandler(div, "click", function(evt){cancelBubbling(evt);});
    return false;
}

// Функция показывает div с информацией
function ownMenuShow(_link, evt, id) {
    // Заблокируем всплывание события
    cancelBubbling(evt);
    // Определение Gecko
    var ua = navigator.userAgent.toLowerCase();
    var isGecko = ua.indexOf("gecko") != -1;
    var mail = _link.href.substring(_link.href.indexOf("to=") + 3, _link.href.length);
    // Формируем HTML-код div-а
    var html = "<table>\
                <tr><td><img class=\"pr3\" src=\"/img/moj_dnevnik.png\" width=\"16\" height=\"16\" alt=\"Мой дневник\" align=\"absmiddle\" style=\"background-color:#FFF9F2\" /></td><td><a href=\"/diary/profile.php?section=diary&user=" + id + "\">Мой дневник</a></td></tr>\
                <tr><td><img class=\"pr3\" src=\"/img/friends.png\" width=\"18\" height=\"17\" alt=\"Мои друзья\" align=\"absmiddle\" style=\"background-color:#FFF9F2\" /></td><td><a href=\"/diary/profile.php?section=friends&user=" + id + "\">Мои друзья</a></td></tr>\
                <tr><td><img class=\"pr3\" src=\"/img/moi soobsheniya.png\" width=\"18\" height=\"17\" alt=\"Мои сообщения\" align=\"absmiddle\" style=\"background-color:#FFF9F2\" /></td><td><a href=\"/diary/profile.php?section=inmail\">Мои сообщения</a></td></tr>\
                <tr><td><img class=\"pr3\" src=\"/img/fotoalbom.png\" width=\"18\" height=\"17\" alt=\"Фотоальбом\" align=\"absmiddle\" style=\"background-color:#FFF9F2\" /></td><td><a href=\"/diary/profile.php?section=album&user=" + id + "\">Фотоальбом</a></td></tr>\
                <tr><td><img class=\"pr3\" src=\"/img/derevo.jpg\" width=\"18\" height=\"17\" alt=\"Семейное дерево\" align=\"absmiddle\" style=\"background-color:#FFF9F2\" /></td><td><a href=\"/diary/tree.php\">Семейное дерево</a></td></tr>\
                </table>\
    ";
    // Покажем div
    var div = document.getElementById("userDropDownId");
    div.innerHTML = html;
    // Задаем положение div-а
    div.style.top = absPosition(_link).y + _link.offsetHeight + "px";
    div.style.left = ((screenSize().w - absPosition(_link).x - div.offsetWidth > 0) ? absPosition(_link).x : absPosition(_link).x - div.offsetWidth + _link.offsetWidth) + "px";
    div.style.display = "";
    // Запрещаем всплывание событий при клике по ДИВу
    addHandler(div, "click", function(evt){cancelBubbling(evt);});
    return false;
}

// Функция для скрытий div-a по клику на документ
function userMenuHide() {
    var div = document.getElementById("userDropDownId");
    // Удаляем обработчик всплывания при клике по ДИВу
    removeHandler(div, "click", function(evt){cancelBubbling(evt);});
    div.style.display = "none";
}
// Опрелеляем top - left координаты блока obj
function absPosition(obj) {
    this.x = 0;
    this.y = 0;
    while(obj) {
        this.x += obj.offsetLeft;
        this.y += obj.offsetTop;
        obj = obj.offsetParent;
    }
    return {x:this.x,y:this.y};
}
// Добавим обработку клика 
addHandler(document, "click", userMenuHide);

