﻿var numberOfPhotos = 0;
var uniqueFolder = Math.round(Math.random()*1000000);
var makeMirror = 0;
uniqueFolder = 'photos/photos'+uniqueFolder;

function resize(textarea) {
  document.getElementById(textarea).rows+=5;
}

// funkcja sprawdza czy po dodaniu nowego wiersza nie powiększyć automatycznie
// pola tekstowego
function powiekszPole(key,pole) {
  var ileWierszy = pole.rows;
  var ileKolumn = 77;
  var tresc = pole.value;
  if(key == 13) {
    var ileByloEnterow = 0;
    var ileLiterWiersz = 0;
    for(var i=0;i<=tresc.length;i++) {
      ileLiterWiersz++;
      if(tresc.charCodeAt(i) == 10) {
        ileByloEnterow++;
        ileByloEnterow += Math.floor(ileLiterWiersz/ileKolumn);
        ileLiterWiersz = 0;
      }
    }
    if(ileByloEnterow > ileWierszy - 3) pole.rows = ileByloEnterow + 5;
  }  
}






 function replaceAll( str, from, to ) {
    var idx = str.indexOf( from );

    while ( idx > -1 ) {
        str = str.replace( from, to );
        idx = str.indexOf( from );
    }

    return str;
 }
 
 
 
 
function checkRedirect() {
	if (makeMirror == 1) {
		var gotoUrl = document.getElementById("linkContainer").value;
	  	window.location = gotoUrl;
	}
}

function formatText(elID,tagstart,tagend) {
	var el=document.getElementById(elID);
  	if (el.setSelectionRange) {
 		el.value = el.value.substring(0,el.selectionStart) + tagstart + el.value.substring(el.selectionStart,el.selectionEnd) + tagend + el.value.substring(el.selectionEnd,el.value.length);
        }
  	else {
  	
  		el.value = el.value + tagstart + tagend;
  	}
  }




function addLink(el) {
    var area=document.getElementById(el);
    var nazwa = '';
    var link = '';
    
    var selectedText = area.value.substr(area.selectionStart, (area.selectionEnd - area.selectionStart));
    
    if(selectedText.substr(0, 4) == 'http') {
		   
		link = selectedText;		   
    }
    else {
    
		if (area.selectionStart == area.selectionEnd) nazwa='prompt';
		
		link = prompt('Podaj link','http://panato.pl');
	
		if(nazwa == 'prompt') nazwa=prompt('Podaj nazwę linku','Nazwa');
    }
       
    if ((link!=null)&&(nazwa!=null)) {
		link = '[link=' + link + ']' + nazwa;		
		formatText(el, link, '[/link]');		
    } 
    else alert('Akcja anulowana');
}

function addYouTube(el) {
    var link=prompt('Podaj link na youtube',' d ');
    if (link!=null) {
       link='[youTube]' + link;

       formatText(el, link, '[/youTube]');
    }
}

function showDiv(divId) {
  document.getElementById('photoSpan'+divId).innerHTML='';
  $('#photoDiv'+divId).show("slow"); 
  //document.getElementById('photoSpan'+divId).innerHTML='<a href=\"#\" onclick=\"hideDiv(\''+divId+'\'); return false;\">Schowaj<br /></a>';
}

function hideDiv(divId) {
  $('#photoDiv'+divId).hide("slow"); 
  document.getElementById('photoSpan'+divId).innerHTML='<a href=\"#\" onclick=\"showDiv(\''+divId+'\'); return false;\">Pokaż</a><br /><br />';
}

function deleteDiv(divId) {
	$('#photoDiv'+divId).hide("slow");
	var photoD = 'photoDiv'+divId;
	var photoS = 'photoSpan'+divId;
	
	var el = document.getElementById(photoD);
	el.parentNode.removeChild(el);
	
	el = document.getElementById(photoS);
	el.parentNode.removeChild(el);
	
}

function startedUpload(photoID) {
	document.getElementById('photoDiv'+photoID).style.visibility='hidden';
	
	document.getElementById('deleteSpan'+photoID).innerHTML='';
	
	var img = 'gfx/icon_loading.gif';
	var msg = 'Trwa ładowanie zdjęcia na serwer...';
	var html = 
			'<table height="100%" width="100%" align="left" style="vertical-align: middle; padding:3px; border: 1px solid rgb(255,249,195); background: rgb(75,75,75);" ><tr><td>' +
			'<img border="0" alt="" src="' + img + '"  style="vertical-align: middle;"/>' +
			'</td><td>' +
			'<font style="font-size:12px;vertical-align: middle;color: #afcfcf" >' + msg + '</font>' +
			'</td><td style="padding-left: 15px;"><a href=\"#\" onclick=\"deleteDiv(\''+photoID+'\'); return false;\"><img src="gfx/edit_usun.png" border="0" /></a></td></tr></table>';
			
	document.getElementById('photoSpan'+photoID).innerHTML = html;
}

function addPhoto() {
  numberOfPhotos+=1;
  
  var newDiv = document.createElement('div');
  newDiv.id = 'photoDiv'+numberOfPhotos;
  
  var newSpan = document.createElement('span');
  newSpan.id = 'photoSpan'+numberOfPhotos;
  
  var newUpload='<form action=\"./wklejarka/zapiszzdjecie.php?id='+numberOfPhotos+'&dest='+uniqueFolder+'\" method=\"post\" enctype=\"multipart/form-data\"';
  newUpload+='target=\"upload_target'+numberOfPhotos+'\" id=\"zdjeciaForm'+numberOfPhotos+'\" >';
  newUpload+='<iframe id=\"upload_target'+numberOfPhotos+'\" name=\"upload_target'+numberOfPhotos+'\" src=\"#\" style=\"width:0;height:0;border:0px solid #fff;\"></iframe>';
  
  newUpload+='<table cellspacing="0" cellpadding="0"><tr><td width="25" align="left"><span id=\"deleteSpan'+numberOfPhotos+'\" >';
  newUpload+='<a href=\"#\" onclick=\"deleteDiv(\''+numberOfPhotos+'\');return false;\" onmouseover="t(this,event)"><img src="gfx/edit_usun.png" border="0" /></a>';
  newUpload+='</td><td>';
  newUpload+='<input type=\"file\" name=\"file' + numberOfPhotos + '\" id=\"file' + numberOfPhotos + '\" style="background: #dcdcdc;"';
  newUpload+=' onchange=\"document.getElementById(\'zdjeciaForm'+numberOfPhotos+'\').submit(); startedUpload('+numberOfPhotos+');\" />';
  newUpload+='</td></tr></table></span>';
  newUpload+='</form><br />';
  
  newDiv.innerHTML = newUpload;
  document.getElementById('photosDiv').appendChild(newSpan);
  document.getElementById('photosDiv').appendChild(newDiv);
  
}

function rotate_photo(cel, save, name, rot, mime) {
var xmlhttp;
if (window.XMLHttpRequest)
  {
  // code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else if (window.ActiveXObject)
  {
  // code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
else
  {
  alert("Your browser does not support XMLHTTP!");
  }

xmlhttp.onreadystatechange = function() {
  if (xmlhttp.readyState==4) {
	
	var src_split = xmlhttp.responseText.split('?');
	var image_src = src_split[0] + "?" + (new Date()).getTime();
	
	var size = src_split[1].split('x');
	var imwidth = parseInt(size[0]);
	var imheight= parseInt(size[1]);
	
	var longSide = 150;
	var rozmiar;
	
	if (imheight>imwidth)  {
		//document.getElementById(cel).height = 80;
		//document.getElementById(cel).width = Math.ceil(imwidth*(80/imheight));
		rozmiar = 'height="'+longSide+'"';
	} else {
		//document.getElementById(cel).width = 150;
		//document.getElementById(cel).height= Math.ceil(imheight*(150/imwidth));
		rozmiar = 'width="'+longSide+'"';
	}
	//document.getElementById(cel).src = image_src;
	document.getElementById('span_'+cel).innerHTML = '<img src="'+image_src+'" '+rozmiar+' id="'+cel+'" />';

    $('#rot_'+cel).css('visibility','hidden');
    document.getElementById('rotate_info_'+cel).innerHTML = '';

  }
}

  $('#rot_'+cel).css('visibility','visible');
  document.getElementById('rotate_info_'+cel).innerHTML = 'Trwa obracanie grafiki...';

  var link="./wklejarka/rotate.php?source="+name+"&rot="+rot+"&save="+save+"&mime="+mime;
  xmlhttp.open("GET", link, true);
  xmlhttp.send(null);
}
function delete_url_from_textarea(urlToDelete) {
	var result = document.getElementById('mainTextArea').value;
	result = replaceAll(result, urlToDelete, "");
	document.getElementById('mainTextArea').value = result;
};

function delete_photo(cel, adres) {
var xmlhttp;
if (window.XMLHttpRequest)
  {
  // code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else if (window.ActiveXObject)
  {
  // code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
else
  {
  alert("Your browser does not support XMLHTTP!");
  }

xmlhttp.onreadystatechange = function() {
  if (xmlhttp.readyState==4) {
	if (xmlhttp.responseText == "success") {
		var urlToDelete = "[img]http://panato.pl/wklejarka" + adres.substring(1) + "[/img]";
		delete_url_from_textarea(urlToDelete);
		deleteDiv(cel);
	} else {
		alert("Usunięcie zdjęcia nie powiodło się.");
	}
  }
}
var link="./wklejarka/deletePhoto.php?adres="+adres;
xmlhttp.open("GET", link, true);
xmlhttp.send(null);
}


function uploadComplete(photoName, photoID, width, height, mime) {
if (photoName=='Invalid file') {
  alert('Nieprawidłowy lub za duży plik!');
  deleteDiv(photoID);
} 
else {
  var rozmiar = 'width="150"';
  if(height>width)  rozmiar = 'height="150"';

  var photoUrl = uniqueFolder + '/' +photoName;
  document.getElementById('photoDiv'+photoID).style.visibility='visible';

  //document.getElementById('photoDiv'+photoID).innerHTML='UPLOADED ! URL - <a href="http://panato.pl/wklejarka/'+photoUrl+'" >http://panato.pl/wklejarka/'+photoUrl+'</a>';
  //<br /> <a href=\"#\" onclick=\"rotate_photo(\'photoImgSrc'+photoID+'\', \'./'+photoUrl+'\', \'http://panato.pl/wklejarka/'+photoUrl+'\', -90, \''+mime+'\'); return false;\">Obróć zdjęcie</a>
	
  var ahref_hide = '<a href=\"#\" onclick=\"hideDiv(\''+photoID+'\'); return false;\">';
  var ahref_rotateright = '<a href=\"#\" onclick=\"rotate_photo(\'photoImgSrc'+photoID+'\', \'./'+photoUrl+'\', \'http://panato.pl/wklejarka/'+photoUrl+'\', -90, \''+mime+'\'); return false;\">';
  var ahref_rotateleft = '<a href=\"#\" onclick=\"rotate_photo(\'photoImgSrc'+photoID+'\', \'./'+photoUrl+'\', \'http://panato.pl/wklejarka/'+photoUrl+'\', 90, \''+mime+'\'); return false;\">';
  var ahref_delete = '<a href=\"#\" onclick=\"delete_photo(\''+photoID+'\', \'./'+photoUrl+'\'); return false;\">';
	
  document.getElementById('photoDiv'+photoID).innerHTML ='<table cellspacing="0" border="0" cellpadding="0"><tr><td valign="top"><div id="zdjecie'+photoID+'" style="border: 1px solid rgb(255,249,195);background: rgb(75,75,75);padding: 1px;"><span id="span_photoImgSrc'+photoID+'"><img src= "http://panato.pl/wklejarka/'+photoUrl+'" '+rozmiar+' id="photoImgSrc'+photoID+'" /></span></div></td><td valign="top" style="padding-left: 10px;"><table cellspacing="2" cellpadding="0"><tr><td width="20" align="center">'+ahref_hide+'<img src="gfx/fotoupload_hide.jpg" border="0"></a></td><td style="padding-left: 4px;">'+ahref_hide+'Zwiń miniaturkę</a></td></tr><tr><td width="20" align="center">'+ahref_rotateright+'<img src="gfx/fotoupload_rotateright.jpg" border="0"></a></td><td style="padding-left: 4px;">'+ahref_rotateright+'Obróć w prawo</a></td></tr><tr><td width="20" align="center">'+ahref_rotateleft+'<img src="gfx/fotoupload_rotateleft.jpg" border="0"></a></td><td style="padding-left: 4px;">'+ahref_rotateleft+'Obróć w lewo</a></td></tr><tr><td width="20" align="center">'+ahref_delete+'<img src="gfx/fotoupload_delete.jpg" border="0"></a></td><td style="padding-left: 4px;">'+ahref_delete+'Usuń zdjęcie</a></td></tr><tr><td width="20" align="center" style="padding-top: 10px;"><img src="gfx/rotate-in-progress.gif" id="rot_photoImgSrc'+photoID+'" style="visibility: hidden;" border="0" /></a></td><td style="padding-left: 4px; padding-top: 10px;"><span id="rotate_info_photoImgSrc'+photoID+'"></span></td></tr></table></td></tr></table></td></tr></table>';
  document.getElementById('photoDiv'+photoID).innerHTML +='<br /><br />';
  
  document.getElementById('photoSpan'+photoID).innerHTML='';
document.getElementById('mainTextArea').value = document.getElementById('mainTextArea').value + '\n [img]http://panato.pl/wklejarka/' + photoUrl + '[/img]';
}
}


 
function uploadWklejki(tekst) {
	
	tekst = replaceAll(tekst,'+','^plus^');
    tekst = replaceAll(tekst,String.fromCharCode(9),'     ');
	
	var xmlhttp;
	var cel = document.getElementById('wyswietlanieLinku');
	if (window.XMLHttpRequest)
	  {
	  // code for IE7+, Firefox, Chrome, Opera, Safari
	  xmlhttp=new XMLHttpRequest();
	  }
	else if (window.ActiveXObject)
	  {
	  // code for IE6, IE5
	  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
	  }
	else
	  {
	  alert("Your browser does not support XMLHTTP!");
	  }
	
	var load = false; 
	
	xmlhttp.onreadystatechange = function() {
	  if (xmlhttp.readyState==4) {
		  cel.innerHTML = xmlhttp.responseText;
		  checkRedirect();
	  } else 
	  if (xmlhttp.readyState<4 && load == false) {
		  load = true;
		  var msg = "Trwa generowanie skrótu...";
		  var img = "gfx/icon_loading.gif";
		  var html = 
			'<table height="100%" width="100%" align="left" style="vertical-align: middle; padding:10px;"><tr><td>' +
			'<img border="0" alt="" src="' + img + '"  style="vertical-align: middle;"/>' +
			'</td><td>' +
			'<font style="font-size:18px;vertical-align: middle;color: #afcfcf" >' + msg + '</font>' +
			'</td></tr></table>';
		  
		  document.getElementById('wyswietlanieLinkuRamka').style.display = 'block';
		  
		  $("#wyswietlanieLinku").stop()
		  .animate({height: "50px"}, 500);
		
		  cel.innerHTML = html;
	  }
	}
	
	var request = "./wklejarka/zapiszwklejke.php?q=1"; 
	
	if(document.wklejkaForm.twojskrot.checked) {
		request += "&skrot=" + escape(document.wklejkaForm.skrot.value);
	}

	
	if(document.wklejkaForm.wlasnehaslo.checked) {
		request += "&pass=" + escape(document.wklejkaForm.haslo.value);
	}
/*
	if(document.wklejkaForm.hasloedycjichck.checked) {
		request += "&hasloedycji=" + escape(document.wklejkaForm.hasloedycji.value);
	}
	*/
	if(!document.wklejkaForm.bbcode.checked) {
		request += "&bbcode=off";
	}
	
	var req = "tekst="+encodeURI(tekst);
	req = req.replace(/&/g, '^amp^');

	xmlhttp.open("POST", request, true);
	xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	xmlhttp.setRequestHeader("Content-length", req.length);
	xmlhttp.setRequestHeader("Connection", "close");
	xmlhttp.send(req);
}


function schowajPodglad() {
	$("#wklejkaPreview").animate(
		{
		height:"1px",
		width:"1px",
		"opacity": "0"},1000);
}

function pokazPodglad() {
$("#wklejkaPreview").animate(
		{
		height:"80%",
		width:"80%",
		"opacity": "1"},1000).css("display","block");
		
$("#previewIframe").animate(
	{
		height:"80%",
		width:"97%",
		"opacity": "1"},1000).css("display","block");		
}

function wklejkaPreview(tekst) {

    tekst = replaceAll(tekst,'+','^plus^');
    tekst = replaceAll(tekst,String.fromCharCode(9),'     ');

	var xmlhttp;
	var cel = document.getElementById('previewIframe');
	var loadingSpan = '';
	
	if (window.XMLHttpRequest)
	  {
	  // code for IE7+, Firefox, Chrome, Opera, Safari
	  xmlhttp=new XMLHttpRequest();
	  }
	else if (window.ActiveXObject)
	  {
	  // code for IE6, IE5
	  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
	  }
	else
	  {
	  alert("Your browser does not support XMLHTTP!");
	  }
	
	var load = false; 
	
	xmlhttp.onreadystatechange = function() {
	  if (xmlhttp.readyState==4) {
		  
		  cel.contentWindow.document.body.innerHTML = xmlhttp.responseText;
		  
	  } else 
	  if (xmlhttp.readyState<4 && load == false) {
		  load = true;
		  pokazPodglad();
		  var msg = "Trwa generowanie podglądu...";
		  var img = "gfx/icon_loading.gif";
		  var html = 
			'<table height="100%" width="100%" align="left" style="vertical-align: middle; padding:10px;" ><tr><td>' +
			'<img border="0" alt="" src="' + img + '"  style="vertical-align: middle;"/>' +
			'</td><td>' +
			'<font style="font: 18px trebuchet ms; vertical-align: middle;color: #afcfcf" >' + msg + '</font>' +
			'</td></tr></table>';
		  cel.contentWindow.document.body.innerHTML = html;
	  }
	}
	
	var request = "./wklejarka/podglad.php?q=1"; 
	
	if(!document.wklejkaForm.bbcode.checked) {
		request += "&bbcode=off";
	}
	
	var req = "tekst="+encodeURI(tekst);
	req = req.replace(/&/g, '^amp^');
	
	xmlhttp.open("POST", request, true);
	xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	xmlhttp.setRequestHeader("Content-length", req.length);
	xmlhttp.setRequestHeader("Connection", "close");
	xmlhttp.send(req);
}

function sprawdzSkrotWklejarka(input) {
	
	var xmlhttp;
	var load = false; 
	
	if (window.XMLHttpRequest)
	  {
	  xmlhttp=new XMLHttpRequest();
	  }
	else if (window.ActiveXObject)
	  {
	  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
	  }
	else
	  {
	  alert("Your browser does not support XMLHTTP!");
	  }

	xmlhttp.onreadystatechange = function() {
	  if (xmlhttp.readyState==4) { 
		  if (xmlhttp.responseText == "ok") {
			  input.style.borderColor = "#8ac73e";
			  document.getElementById("icon_tip_wklejarka").innerHTML = '<img src="../gfx/icon_ok_tip.png" />';
		  } else {
			  input.style.borderColor = "#ea7b63";
			  document.getElementById("icon_tip_wklejarka").innerHTML = '<img src="../gfx/icon_error_tip.png" />';
		  }
	  	} 
	  }

	var skrot = input.value;
	var request = "../poprawnosc_skrotu.php?id=" + skrot;

	xmlhttp.open("GET", request, true);
	xmlhttp.send(null);
}

function schowajFC() {
		$("#fontColors").stop()
		.animate({opacity: 0}, 400, "linear", function() { $("#fontColors").css("display","none");});
	}
	
function schowajFS() {
		$("#fontSizes").stop()
		.animate({opacity: 0}, 400, "linear", function() { $("#fontSizes").css("display","none");});
	}
	
