import PhotoSwipe from 'photoswipe'
import PhotoSwipeUI_Default from 'photoswipe/dist/photoswipe-ui-default'
import 'photoswipe/dist/photoswipe.css'
import 'photoswipe/dist/default-skin/default-skin.css'

import Util from './util'

function init() {
	let pswpElement = document.querySelectorAll('.pswp')[0]
  let imgArr = document.querySelectorAll('.article-entry img:not(.reward-img)')
  let getThumbBoundsFn = function(target) {
    return function(index) { // index是当前点击的图片在相册中的索引值
      var pageYScroll = window.pageYOffset || document.documentElement.scrollTop
      var rect = target.getBoundingClientRect()
      return {x:rect.left, y:rect.top + pageYScroll, w:rect.width}
    }
  }
  const items = Array.prototype.map.call(imgArr, em => {
    let src = em.getAttribute('data-target') || em.getAttribute('src')
    let title = em.getAttribute('alt')
    // 获得原图尺寸
    const image = new Image()
    image.src = src
    return {
      msrc: src, // 缩略图的地址(在动画过程中显示的是缩略图, 这里暂且用相同的地址了)
      src,
      w: image.width || em.width,
      h: image.height || em.height,
      title
    }
  })
	Array.prototype.forEach.call(imgArr, (em, index) => {
		em.addEventListener('click', function(e){
			// slider展开状态
			if (document.querySelector('.left-col.show')) return
			var gallery = new PhotoSwipe(pswpElement, PhotoSwipeUI_Default, items, {
				index,
        bgOpacity: 0.8,
        getThumbBoundsFn: getThumbBoundsFn(e.target)
			})
			gallery.init()
		})
	})
}

if(!window.themeConfig.pageid) { // 非个性化页面的普通文章
  Util.addLoadEvent(init)
}