/* POPUP */ $(function(){ // onLoad $('.popupImg, .popupVideo, .popupFlash, .popupHtml, .popupFS').click(function(e){ // Параметры var shadowTransp = 0.75; // Параметры var t = $(this); // объект var rel = parseInt(t.attr('rel')); var newSrc = t.attr('href'); // путь к большой картинке var alt = t.children().attr('alt'); // подпись var htmlIMG = ''; var htmlHtml = ''; var htmlFlash = ''; var htmlVideo = ''; var htmlGallery = ''; var htmlFSGallery = ''; var showPopup = false; var htmlDownload = ''; var downloadText = ''; var popupRootClasses = ''; var popupClasses = ' pie '; var bodyHeight = $('.main').height(); var windowHeight = $(window).height(); //var topX = (document.body.scrollTop || document.documentElement.scrollTop) + 15; // /* верхняя граница экрана для прокручивающихся попапов ( частный случай: ие6, ФФ2) */ var topX = (document.body.scrollTop || document.documentElement.scrollTop) + 15; // /* верхняя граница экрана для прокручивающихся попапов ( частный случай: ие6, ФФ2) */ if( t.hasClass('popupFS')) { var popupFS = true; popupClasses += ' popupFSclass'; popupRootClasses += 'popupRootFS' } if( t.hasClass('popupImg')) { var popupImg = true } if( t.hasClass('popupFlash')) { var popupFlash = true } if( t.hasClass('popupVideo')) { var popupVideo = true } if( t.hasClass('popupHtml')) { var popupHtml = true; popupClasses += ' popupHtmlP' } if( t.hasClass('popupGallery')) { var popupGallery = true; popupClasses += ' popupGalleryP' } if( t.hasClass('popupLicense')) { var popupLicense = true; popupClasses += ' popupLicenseP'; } if( t.hasClass('popupCamera')) { popupClasses += ' popupCamera'; } /* =============================== === операции до создания попапа === =============================== */ if ( en == true ) { // Язык downloadText = 'Download original size'; } else { var downloadText = 'Скачать в оригинальном размере '; } if ( popupHtml ) { htmlHtml = t.parent().next().html(); } if ( popupFS ) { // Gallery Garden-City var galleryFromHtml = $('.galleryInPopup').html(); // HTML галереи загружаем в попап htmlFSGallery += '
' + galleryFromHtml + '
' + '' + '' ; ; // центральная картинка в попапе $('body').addClass('overflow-x'); } if ( popupImg ) { // IMG if( popupGallery ) { // Галерея REVIVAL? var htmlGallery = '
 
' + '
'+ '' + '
' + '' + '
'; }; var htmlIMG = ''; var originalPhoto = false; //var originalPhoto = t.attr('rel'); if(originalPhoto){ // фото оригинального размера //var string = newSrc.length; //var newSrc2 = newSrc.substr( 0, string-4 ); /* //htmlDownload = '
Скачать в оригинальном размере
'; */ htmlDownload = '
' + downloadText + '
'; }; }; if ( popupVideo ) { // VIDEO htmlVideo = ''; }; if ( popupFlash ) { // FLASH var htmlFlash = '
'; }; /* =========================== === добавляем попап в HTML === ============================*/ $('body').append ( //'
' + '
' + '
' + '
' + '
' + 'Закрыть' + '
' + '
' + htmlIMG + htmlVideo + htmlFlash + htmlHtml + htmlFSGallery + '
' + '
' + htmlGallery + htmlDownload + '
' + '
' + '
' + '
' ); // Переменные, инициализирующиеся после создания попапа var popupMainImage = $('.popupMainImage'); var popupT = $('.popupTableIMG'); var title = t.attr('title'); // заголовок var caption = t.children().attr('alt'); // описание var rel = t.attr('rel'); // rel var windowH = $(window).height(); // высота окна var popup = $('.popup'); var popupTable = $('.popupTable'); /* ================================== === операции после создания попапа === ================================== */ $('.popupTitle').text(title); // тайтл $('.popupCaption').text(caption); // подпись popupT.css('height', windowH); // центруем по вертикали popupTable.css({top:topX}); // PopupFS if ( popupFS ) { $(".popupBody .scrollableFSGallery").scrollable({ circular: false, mousewheel: false }).navigator(); var gapi = $(".popupBody .scrollableFSGallery").data("scrollable"); var totalGPhotos = $('.galleryInPopup .items a').length; var totalGPages = Math.ceil(totalGPhotos/7); // количество страниц var startPhotoNum = parseInt(rel); var curPhoto = startPhotoNum; var galleryTitle = t.parents('.scrollGallery').prevAll('.galleryTitle').text(); $('.FSGalleryTitle').text(galleryTitle); function loadPhoto(photoNum) { var prevHref = $('.scrollableFSGalleryP .items a[rel='+(photoNum - 1)+']').attr('href'); var curHref = $('.scrollableFSGalleryP .items a[rel='+ photoNum +']').attr('href'); var nextHref = $('.scrollableFSGalleryP .items a[rel='+(photoNum + 1)+']').attr('href'); //scrollableGalleryContent $('.galleryFSmainImg').attr('src', curHref ); $('#galleryFSmainNextID').children().attr('src', nextHref); $('#galleryFSmainPrevID').children().attr('src', prevHref); $('.popup .scrollableFSGalleryP a.popupFS').removeClass('sliderFScurrent') $('.scrollableFSGalleryP .items a[rel='+ photoNum + ']').addClass('sliderFScurrent'); // высчитываем на какой странице находится текущая фотка var curGPage = Math.floor(((photoNum-1)/7)); gapi.seekTo(curGPage); if(curPhoto == 1) { $('#galleryFSmainPrevID').addClass('popupFSnavDisabled').children().attr('src', ''); } else { $('#galleryFSmainPrevID').removeClass('popupFSnavDisabled'); } if(curPhoto == totalGPhotos) { $('#galleryFSmainNextID').addClass('popupFSnavDisabled').children().attr('src', ''); } else { $('#galleryFSmainNextID').removeClass('popupFSnavDisabled'); } } loadPhoto(startPhotoNum); // подсвечиваем текущую фотку при открытии попапа // кликаем по элементу галереи в попапе сверху $('.popup .scrollableFSGalleryP a.popupFS').click(function(){ var gt = $(this); var gt_rel = parseInt(gt.attr('rel')); curPhoto = gt_rel; loadPhoto(curPhoto); gt.addClass('sliderFScurrent'); return false; }); $('#galleryFSmainNextID').click(function(){ if(curPhoto < totalGPhotos) { curPhoto++; loadPhoto(curPhoto); } return false; }); $('#galleryFSmainPrevID').click(function(){ if(curPhoto != 1) { curPhoto--; loadPhoto(curPhoto); } return false; }); }; /*if ( $.browser.mozilla && /1.8/.test(navigator.userAgent ) ) { // FF2 var fox2 = true; popupTable.addClass('popupTableFirefox2'); popup.addClass('fox2'); };*/ if ( popupImg ) { // IMG if(popupGallery){ // Галерея $('.popup').css('width', 462); var num = t.attr('rel'); // /* стартовая фотография */ var current = 0; // /* текущая фотография */ var totalPhotos = t.parents('.galleryBox').children().length; // /* следующая */ $('.galleryNext').click(function(){ showPhoto(parseInt(current)+1); $(this).blur(); return false; }); /* // предыдущая */ $('.galleryPrev').click(function(){ showPhoto(current-1); $(this).blur(); return false; }); /* // показать фото No */ function showPhoto(num) { /* // ходим внутри галереи */ var curBoxItem = t.parents('.galleryBox').children().children('a:eq('+(num -1)+')'); var prevNext = curBoxItem.parent().next().children().attr('rel'); var prevNum = curBoxItem.parent().prev().children().attr('rel'); var prevUrl = curBoxItem.parent().prev().children().attr('href'); var currUrl = curBoxItem.attr('href'); var currAlt = curBoxItem.children().attr('alt'); var nextUrl = curBoxItem.parent().next().children().attr('href'); current = num; /* // скрываем стрелочку PREV */ if(num <= 1) { $('.galleryPrev').addClass('out'); url1 = ''; /* // показываем стрелочку PREV */ } else { $('.galleryPrev').removeClass('out'); url1 = prevUrl; // [ num-1 ]; } /* // скрываем стрелочку NEXT */ if(num == totalPhotos) { $('.galleryNext').addClass('out'); url3 = ''; /* // скрываем стрелочку NEXT */ } else { $('.galleryNext').removeClass('out'); url3 = nextUrl; //url3 = gallery [ parseInt(num) + 1 ] ['url']; } $('#galleryImg1').attr({ src: url1 }); $('#popupMainImg').load(function(){ // /* скрываем картинку пока не загрузится */ popupMainImage.removeClass('out'); }); $('#popupMainImg, #popupMainImgSmall').attr({ src: currUrl }); $('#galleryImg3').attr({ src: url3 }); //$('.popupCaption').text( gallery [ num ] ['alt']); $('.popupCaption').text( currAlt ); $(".galleryThumbnail").removeClass("active"); $("#" + current ).parent().addClass("active"); }; showPhoto( num ); } popupMainImage.load(function(){ // скрываем картинку пока не загрузится popupMainImage.removeClass('out'); /*if ( fox2 == true ){ // FIREFOX 2 var imgWidth = popupMainImage.width(); // ширина картинки var imgHeight = popupMainImage.height(); // высота картинки var fox2top = ( ( ( $(window).height() - imgHeight ) /2 ) - 40 ); // topX var fox2left = ( ( $(window).width() - imgWidth ) /2); // leftY popup.css({ 'left': fox2left, 'top': fox2top}); };*/ }); }; if ( popupFlash ) { // FLASH var size = rel.split(','); /* размеры флеша берем из rel="203,342" */ // }; if ( popupVideo ) { // VIDEO flowplayer("player", "/js/flowplayer-3.1.5.swf"); //flowplayer("player", "/js/flowplayer-3.1.5.swf", 'http://krona' + newSrc); //$('#player').flowplayer( "http://swedishkrona.ru/js/flowplayer-3.1.5.swf" ); /*if ( fox2 == true ){ // FIREFOX 2 var imgWidth = 480; // ширина видео var imgHeight = 385; // высота видео var fox2top = ( ( ( $(window).height() - imgHeight ) /2 ) - 40 ); // topX var fox2left = ( ( $(window).width() - imgWidth ) /2); // leftY popup.css({ 'left': fox2left, 'top': fox2top}); };*/ }; // показываем тень $('.shadow').css({opacity:0,display:'block'}).fadeTo('fast', shadowTransp); $('.popupCloser').css('height', bodyHeight); if ( $.browser.msie && $.browser.version < 7) { // IE6 //popupTable.css({'top': topX }); $('.shadow').css('height', bodyHeight); $('.popupCloser, .popupTable').css('height', windowHeight); showPhoto(num); // фиксим неизвестный косяк ИЕ6 } if ( $.browser.msie && $.browser.version < 9) { // IE 6-7-8 $('.pie').each(function() { PIE.attach(this); }); } // закрываем $('.popupClose, .popupCloser, .shadow').click(function(){ // Close popup popupT.remove(); $('.shadow').fadeOut(); $('body').removeClass('overflow-x'); return false; }); return false; }); $(document).keyup(function(e) { // close by ESC button if (e.which == 27){ $('.popupTableIMG').remove(); $('.popap').add('.shadow').fadeOut(); $('body').removeClass('overflow-x'); } }); if(window.showPopup == true){ $('.popupHtml').click(); } }) // on Load