var arr_pics=new Array();
var arr_picdesc=new Array();
var arr_picexplicit=new Array();

function init_pic_viewer(){
	var box=document.getElementById('myalbum');
	if(!box){
		box=document.getElementById('media');
		}
	if(box){
		var pics=box.getElementsByTagName('img');
		for(var i=0; i<pics.length; i++){
			if(pics[i].className.indexOf('private')!=-1){
				addEvent(pics[i],'click',popPicPrivate);
				}else{
				// on cherche le lien de l'image
				var lnk=pics[i];
				while(lnk=lnk.parentNode){
					if(lnk.nodeName.toLowerCase()=='a'){
						break;
						}
					}
				if(lnk && lnk!=pics[i]){
					addEvent(pics[i],'click',popPicViewer);
					if(pics[i].className.indexOf('browsable')!=-1){
						arr_pics.push(lnk);
						if(pics[i].id!='photomain' && pics[i].id!='albummain' && pics[i].getAttribute('alt')!=''){
							arr_picdesc.push(pics[i].getAttribute('alt'));
							}else{
							arr_picdesc.push('');
							}
						if(pics[i].className.indexOf('explicit')!=-1){
							arr_picexplicit.push(lnk);
							}
						}
					}
				}
			}
		}
	}
function popPicPrivate(e){
	if(!this){ return; }
	cancelDefaultBehavior(e);

	var pseudo;
	var h2=document.getElementsByTagName('h2');
	for(var i=0; i<h2.length; i++){
		if(h2[i].className.indexOf('pseudo')!=-1){
			pseudo=h2[i].firstChild.data;
			break;
			}
		}
	if(pseudo!=''){
		var content=document.createElement('div');
		content.className='content';
		
		var txt=document.createTextNode('album prive:: demandez permission pour visionner');
		content.appendChild(txt);
		var br=document.createElement('br');
		content.appendChild(br);
		var lnk=document.createElement('a');
		lnk.setAttribute('title',pseudo);
		lnk.setAttribute('href','/messages/write.php?'+SESSION+'&dest='+pseudo);
		addEvent(lnk,'click',popWriteMsg);
		var lnktxt=document.createTextNode('contacter '+pseudo);
		lnk.appendChild(lnktxt);
		content.appendChild(lnk);
		popDHTML('popwmsg',content,400,300,true);
		}
	}
function popPicViewer(e){
	if(!this){ return; }
	if(this.parentNode && this.parentNode.getAttribute('href')){
		cancelDefaultBehavior(e);
		if(arr_picexplicit.length>=1 && typeof str_msg_picexplicit!='undefined'){
			if(!confirm(str_msg_picexplicit)){
				return false;
				}
			}
		preloadPic(this.parentNode.getAttribute('href'));
		}
	}

function preloadPic(img){

	img=img.toString();
	var content=document.createElement('div');
	content.className='content';

	// On cherche suivant/precedent et description
	var prev;
	var next;
	var desc;
	if(arr_pics.length>1){
		for(var i=0; i<arr_pics.length; i++){
			if(arr_pics[i]==img){
				if((i+1)==arr_pics.length){
					next=arr_pics[0];
					}else{
					next=arr_pics[i+1];
					}
				if(i==0){
					prev=arr_pics[arr_pics.length-1];
					}else{
					prev=arr_pics[i-1];
					}
				desc=arr_picdesc[i];
				break;
				}
			}
		} else if (arr_pics.length==1) {
		desc=arr_picdesc[0];
		}
	var iframe=document.createElement('iframe');
	iframe.setAttribute('id','framepopb');
	iframe.setAttribute('src','/profil/pop_album_top.php?'+SESSION);
	iframe.setAttribute('scrolling','no');
	iframe.className='b728x90';
	content.appendChild(iframe);
	// Fleche precedent
	if(prev){
		var btnprev=document.createElement('button');
		btnprev.className='btn prev png';
		content.appendChild(btnprev);
		}
	// Image "chargement"
	var wait=document.createElement('img');
	wait.setAttribute('id','popwait');
	wait.src='/img/chargement.gif';
	content.appendChild(wait);
	// Image a visionner
	var preload=document.createElement('img');
	preload.setAttribute('id','poppic');
	preload.className='hide';
	preload.src=img;
	preload.setAttribute('src',img);
	addEvent(preload,'load',function(){setTimeout('showPic("'+preload.id+'");',800);});
	addEvent(preload,'error',function(){preload.src='/img/nophoto/default_300x250.jpg';});
	content.appendChild(preload);
	// Fleche suivant
	if(next){
		var btnnext=document.createElement('button');
		btnnext.className='btn next png';
		content.appendChild(btnnext);
		}
	// Desc de photo
	if(desc){
		//caption=document.createElement('caption');
		var caption=document.createElement('div');
		caption.className = 'desc';
		caption.appendChild(document.createTextNode(desc));
		content.appendChild(caption);
		}
	// AFFICHAGE
	var previous_pop=document.getElementById('popPicViewer');
	if(previous_pop && !ie6){
		popDHTML('popPicViewer',content,previous_pop.style.width.replace(/[^0-9]/g,''),previous_pop.style.height.replace(/[^0-9]/g,''),true);
		}else{
		popDHTML('popPicViewer',content,740,250,true);
		}

	if(next || prev){
		var pop=document.getElementById('popPicViewer');
		if(pop){
			var btns=pop.getElementsByTagName('button');
			for(var i=0; i<btns.length; i++){
				if(btns[i].className.indexOf('prev')!=-1){
					addEvent(btns[i],'click',function(){ preloadPic(prev); });
					}else if(btns[i].className.indexOf('next')!=-1){
					addEvent(btns[i],'click',function(){ preloadPic(next); });
					}
				}
			}
		}
	var tmp=document.getElementById('poppic');
	if(tmp){
		if(next){
			addEvent(tmp,'click',function(){ preloadPic(next); });
			}else{
			addEvent(tmp,'click',function(){delPopDHTML('popPicViewer');});
			}
		}

	preload.src=img;
	preload.setAttribute('src',img);
	}


function showPic(id){
	// on retire l'img de chargement
	var wait=document.getElementById('popwait');
	if(wait){
		wait.parentNode.removeChild(wait);
		}
	var preload=document.getElementById(id);

	if(!preload){
		return;
		}
	// on affiche l'image
	if(preload.className){
		preload.className=preload.className.replace(/[ ]*hide/g,'');
		}
	resizePicViewer(preload);	// doit etre APRES l'affichage car IE6 ne peut pas detecter les dimnesions en display:none
	}

function resizePicViewer(img){
	if(!img){return;}
	var pop=document.getElementById('popPicViewer');
	if(!pop){return;}
	var curX=img.width;
	var curY=img.height;
	var tmp=getWindowXY();
	var maxX=tmp[0]-200;
	var maxY=tmp[1]-200;

	if(curX<=28 && curY<=30){
		curX=300;
		curY=250;
		}else if(curX>maxX && curY<=maxY){
		curY=curY*maxX/curX;
		curX=maxX;
		}else if(curX<=maxX && curY>=maxY){
		curX=curX*maxY/curY;
		curY=maxY;
		}else if(curX>maxX && curX/maxX>curY/maxY){
		curY=curY*maxX/curX;
		curX=maxX;
		}else if(curY>maxY && curX/maxX<curY/maxY){
		curX=curX*maxY/curY;
		curY=maxY;
		}else if(curX>maxX && curY>maxY){
		curY=curY*maxX/curX;
		curX=maxX;
		}
	if(img.style){
		img.style.width=curX+"px";
		img.style.height=curY+"px";
		}
	if(curX+100<740){
		curX=640;
		}
	popDHTML('popPicViewer',false,(curX+100),(curY+150),true);
	}

addEvent(window,'load',init_pic_viewer);
