/**
 * Открывает диалоговое окно с информацией об изображении.
 * @param imagecode код изображения
 * @param position позиция изображения в контексте
 * @param context контекст
 * @param provider провайдер контекста
 * @param prices если true, то перейдет в раздел "цены" в диалоговом окне
 */
function popupDetail(imagecode, position, ctx, provider, prices) {

    $.cookie('popupRequest', 'true', { expires: 60 * 24 * 365, path: '/'});
    $.cookie('contextNum', position, { expires: 60 * 24 * 365, path: '/'});
    $.cookie('context', ctx, { expires: 60 * 24 * 365, path: '/'});
    $.cookie('provider', provider, { expires: 60 * 24 * 365, path: '/'});

    if (!window.focus) {
        return true;
    }

    var url = context+"/image/" + imagecode + ".html";
    if (prices) {
        url+="#priceHdr";
    }
    window.open(url, "popupDetail", 'width=1050,height=600,scrollbars=yes');

    $.cookie('popupRequest', null, { expires: 60 * 24 * 365, path: '/'});
    $.cookie('contextNum', null, { expires: 60 * 24 * 365, path: '/'});
    $.cookie('context', null, { expires: 60 * 24 * 365, path: '/'});
    $.cookie('provider', null, { expires: 60 * 24 * 365, path: '/'});
    return false;

}


function targetopener(mylink, closeme, closeonly) {
    if (! (window.focus && window.opener)) {
        return true;
    }
    window.opener.focus();
    if (! closeonly) {
        window.opener.location.href = mylink.href;
    }
    if (closeme) {
        window.close();
    }
    return false;
}

function movePopupPrev(position, context, provider) {
    $.cookie('popupRequest', 'true', { expires: 60 * 24 * 365, path: '/'});
    $.cookie('contextNum', position-1, { expires: 60 * 24 * 365, path: '/'});
    $.cookie('context', context, { expires: 60 * 24 * 365, path: '/'});
    $.cookie('provider', provider, { expires: 60 * 24 * 365, path: '/'});

    window.open("/image/" + imagecode + ".html", "popupDetail", 'width=1050,height=600,scrollbars=yes');

    $.cookie('popupRequest', null, { expires: 60 * 24 * 365, path: '/'});
    $.cookie('contextNum', null, { expires: 60 * 24 * 365, path: '/'});
    $.cookie('context', null, { expires: 60 * 24 * 365, path: '/'});
    $.cookie('provider', null, { expires: 60 * 24 * 365, path: '/'});
    return false;

}
function movePopupNext(position, context, provider) {
    $.cookie('popupRequest', 'true', { expires: 60 * 24 * 365, path: '/'});
    $.cookie('contextNum', position+1, { expires: 60 * 24 * 365, path: '/'});
    $.cookie('context', context, { expires: 60 * 24 * 365, path: '/'});
    $.cookie('provider', provider, { expires: 60 * 24 * 365, path: '/'});

    window.open("/image/" + imagecode + ".html", "popupDetail", 'width=1050,height=600,scrollbars=yes');

    $.cookie('popupRequest', null, { expires: 60 * 24 * 365, path: '/'});
    $.cookie('contextNum', null, { expires: 60 * 24 * 365, path: '/'});
    $.cookie('context', null, { expires: 60 * 24 * 365, path: '/'});
    $.cookie('provider', null, { expires: 60 * 24 * 365, path: '/'});
    return false;

}

/**
 * Отображает превью для картинки
 * @param element ссылка, внутри которой находится оригинальная картинка
 * @param imagecode код изображения
 */
function showPopupPreview(element, imagecode) {
    //прячем все попапы, которые возможно отображены на экране
    $('[id^=ipbc]').hide();

    //ищем тэг оригинальной картинки внутри ссылки
    var img = $('img', element);

    //координаты оригинальной картинки
    var x = img.position().left;
    var y = img.position().top;
    //размеры оригинальной картинки
    var w = img.width();
    var h = img.height();

    //размеры превью (в 2 раза больше)
    var xw = w*2;
    var xh = h*2;
    //координаты превью, считаем так, чтобы по x центры оригинальной картинки и превью совпадали,
    //по по y совпадали нижние края
    var xx = x + (w/2) -(xw/2);
    var xy = y+h-xh;
    //если превью вылазит за пределы экрана, сдвигаем превью влево
    var offs = 0;
    if (w<h) {
        offs = 40;
    }
    if (xx+xw+offs>=document.body.clientWidth) {
        xx=document.body.clientWidth-offs-40-xw;
    }

    //контейнер для превью
    var cont = $('#ipbc'+imagecode);
    //устанавливаем высоту контейнера (ширину растянет картинка-превью)
    cont.height(xh);
    //устанавливаем координаты
    cont.css({top:xy-20, left: xx});
    //подгружаем картинку-превью и выставляем ей высоту
    $(".adp-popup img", cont).attr({
        src:'http://img.fotobank.ru/'+imagecode+'.jpg?size=l',
        height: xh
    });

    //вешаем слушатель - "прятать при уводе мышки"
    cont.bind("mouseleave", function() {
        hidePopupPreview(cont);
    });

    //отображаем превью
    cont.fadeIn();
}


function hidePopupPreview(container) {
    $(container).fadeOut();
    $(container).unbind();
}
