/*============================================================================*/
//                 Pictlayer - 画像をレイヤー表示します                       //
//        script by フォトノート http://fseasons.blog39.fc2.com/   2007-12    //
/*============================================================================*/
/*
画像クリックで別窓表示されるのを、同じ窓内にオリジナルサイズでレイヤー表示します。
画像の周りの色や透明度、画像の枠線などをカスタマイズ出来ます。
*/

// 画像レイヤーの背景色
var Bgc = '#080808';

// 不透明度を指定(0-100)
var Opc = '60';

// 画像に装飾用のスタイルを指定できます
var Addstl = 'border:solid 1px #999999;';

// 画像が有るカラムのID名を記入すると、他カラムのリンクを検索しません
// よく判らない場合はこのままで結構です
var Tar = '';

/*============================編集はここまで=================================*/

var Pict = new Array();
var DivElement=Imgcontainer=Dwidth='';
function initi() {
if(document.getElementsByTagName || document.getElementById) {
var Parea = document.getElementById(Tar) || document.body;
var Links = Parea.getElementsByTagName('a') || 0;
var LinksNo = Links.length || 0;

var p = 0;
for(i=0;i<LinksNo;i++){
var Href = Links[i].href;
if(Href.match(/(jpg|jpeg|png|gif)$/i)) {
p++;
Pict[p] = new Image();
Pict[p].src = Href;
Links[i].target = '_self';
Links[i].title = 'original size';
Links[i].id = p;
Links[i].onclick = function() {PictLayer(this.id); return false;}
}}}
if(p > 0){
var winsize = WinSize();
var Docsize = DocSize();
Dwidth = Docsize.docW;
Dheight = Docsize.docH;
DivElement = document.createElement('div');
DivElement.style.position = 'absolute';
DivElement.style.left = 0;
DivElement.style.top = 0;
DivElement.style.width = Dwidth+'px';
DivElement.style.height = Dheight+'px';
DivElement.style.background = Bgc;
DivElement.style.display = 'none';
document.body.appendChild(DivElement);

Imgcontainer = document.createElement('div');
Imgcontainer.style.display = 'none';
document.body.appendChild(Imgcontainer);
}}
function PictLayer(ic) {
var winsize = WinSize();
var ImgElement = Pict[ic];
var Iwidth = ImgElement.width;
var Iheight = ImgElement.height;
var Sheight = winsize.hei;
var Scrleft = winsize.x;
var Scrtop = winsize.y;
var Left = Math.max(((Dwidth/2)-(Iwidth/2))+Scrleft, 5);
var Top = Math.max(((Sheight/2)-(Iheight/2))+Scrtop, 5);
Imgcontainer.innerHTML = '<img src="'+ImgElement.src+'" title="Close" style="'+Addstl+'cursor:pointer;">';
Imgcontainer.style.position = 'absolute';
Imgcontainer.style.left = Left+'px';
Imgcontainer.style.top = Top+'px';
Imgcontainer.style.display = 'block';
Imgcontainer.onclick = function() {removePict();}
DivElement.style.display = 'block';
setOpacity(DivElement, Opc);
}
function removePict(pic) {
Imgcontainer.style.display = 'none';
DivElement.style.display = 'none';
}
function WinSize() {
var Obj = new Object();
Obj.wid = window.innerWidth || (window.document.documentElement.clientWidth || window.document.body.clientWidth);
Obj.hei = window.innerHeight || (window.document.documentElement.clientHeight || window.document.body.clientHeight);
Obj.x = window.pageXOffset || (window.document.documentElement.scrollLeft || window.document.body.scrollLeft);
Obj.y = window.pageYOffset || (window.document.documentElement.scrollTop || window.document.body.scrollTop);
return Obj;
}
function DocSize() {
var Cdn = new Object();
Cdn.docW = Math.min(document.body.scrollWidth , document.documentElement.scrollWidth);
Cdn.docH = Math.max(document.body.scrollHeight , document.documentElement.scrollHeight);
return Cdn;
}
function setOpacity(obj,num) {
if (obj,num) {
if (window.attachEvent && !window.opera) obj.style.filter = 'alpha(opacity=' + num + ')';
else if (navigator.userAgent.indexOf('Gecko') > -1 && navigator.userAgent.indexOf('KHTML') == -1) obj.style.MozOpacity = num/100;
else obj.style.opacity = num/100;
}}
function EventListener(target, type, func){
if(target.attachEvent){
target.attachEvent("on" + type, func);
} else if(target.addEventListener){
target.addEventListener(type, func, true);
}else {
target["on" + type] = func;
}}
EventListener(window, 'load', initi);

