// JavaScript Document
// ImgEditor PHP and Javascript Component of Content Manager
// by Will Arnold, Design Brooklyn (www.designbrooklyn.com)

function make_captions(field,images,gallery) {
	
	fieldTable = document.getElementById('captionTable_'+field);
	
	fieldID = document.getElementById('hidden_'+field);
	caps = fieldID.value.split(",");
	var capVals = Array();
	for (i=0; i<images.length; i++) {
		capVals[i] = 'none';
		for (j=0; j<caps.length; j++) {
			val = caps[j].split("|");
			if (val[0] == images[i]) {
				 capVals[i] = val[1];
			}
		}
	}
	
	for (i=0; i<capVals.length; i++) {
		alert(capVals[i]);
	}
	
}

function openImgEditor(src,preset,retId,cid,single) {
	var dims = 'location=0,status=0,scrollbars=1,resizable=1,width=825,height=625';
	window.open('http://www.dance-enthusiast.com/client_img_editor.php?src='+src+'&preset='+preset+'&retId='+retId+'&cid='+cid+'&single='+single,null,dims);
}

var num_cells = 5;
var maxH = 90;

function drawGallery(imgs,index,t2,t3) {
	
	if (imgs == '') {
		return imgs;	
	} else {
		var images = imgs.split(",");
		var iCount = 0;
		for (i=0; i<images.length; i++) {
			addImgToGal(index,images[i],t2);
			iCount++;
		}
		return true;
	}
}

function addImgToGal(index,iSrc,caption) {

	var useR = false;
	var iParts = index.split("_");
	var preset;
	if (iParts[0] == 'images') {
		preset = 'image';
	} else if (iParts[0] == 'action') {
		preset = 'action_shot';
	} else {
		preset = iParts[0];
	}
	
	// get all tds from imgTable
	var imgTable = document.getElementById('imgTable_'+index);
	var tBody = imgTable.getElementsByTagName("tbody")[0];
	var iTrs = imgTable.getElementsByTagName("tr");
	
	var iTds = iTrs[iTrs.length-1].getElementsByTagName("td");
	
	var addNewImg = iTds[iTds.length-1];
	iTrs[iTrs.length-1].removeChild(addNewImg);

	// find last row or make new row
	var useRow;
	if (iTds.length-1 > num_cells) {
		useRow = document.createElement('tr');
	} else {
		useRow = iTrs[iTrs.length-1];
	}
	
	// CELL
	var cid = new Date();
	cid = cid.getTime() + "_" + cid.getMilliseconds() +"_"+ Math.round(Math.random()*1000);
	var newC = document.createElement('td');
	newC.setAttribute('id',cid);

	newC.setAttribute('align','center');
	newC.style.borderWidth = '1px';
	newC.style.borderColor = '#aaaaaa';
	newC.style.borderStyle = 'solid';

	// LINK
	var l1 = document.createElement('a');
	l1.setAttribute('href','javascript:openImgEditor(\''+iSrc+'\',\''+preset+'\',\''+index+'\',\''+cid+'\');');

	// IMAGE
	var newImg = new Image();
	newImg.src = iSrc;
	var iW = (maxH / newImg.height) * newImg.width;
	
	// set img attributes
	
	try {
		var i = document.createElement('<img src="../'+iSrc+'" height="'+maxH+'" border="0">');
	} catch (e) {
		var i = document.createElement('img');
		i.setAttribute("src",'../'+iSrc);
		i.setAttribute("height",maxH);
		i.setAttribute("width",iW);	
		i.setAttribute("border",0);
	}
	
	// <br>
	var br = document.createElement("br");
	// edit link
	var el = document.createElement("a");
	el.setAttribute('href','javascript:openImgEditor(\''+iSrc+'\',\''+preset+'\',\''+index+'\',\''+cid+'\');');
	var et = document.createTextNode("Edit");
	
	
	// add remove link
	var sep = document.createTextNode(" / ");
	var remT = document.createTextNode("Remove");
	var rem = document.createElement("a");
	rem.setAttribute('href','javascript:removeImgFromGal(\''+index+'\',\''+cid+'\');');
	
	// create captions
	/*if (caption != '' && caption != null) {
		var cbr = document.createElement("br");
		var cap = document.createElement("input");
		cap.setAttribute("type","text");
		cap.setAttribute("name",caption);
		cap.setAttribute("size","20");
		cap.setAttribute("id",caption);
		var cp = document.createTextNode(caption+" , "+index);
	}*/
	
	// redraw the table
	l1.appendChild(i);
	el.appendChild(et);
	rem.appendChild(remT);
	
	newC.appendChild(l1);
	newC.appendChild(br);
	newC.appendChild(el);
	if (iParts[0] == 'images' || iParts[0] == 'article') {
		newC.appendChild(sep);
		newC.appendChild(rem);
	}
	/*if (cap_field != null) {
		newC.appendChild(cbr);
		newC.appendChild(cap);
		newC.appendChild(cp);
	}*/
	
	useRow.appendChild(newC);
	if (iTds.length > num_cells) {
		useRow = document.createElement('tr');
	} else {
		useRow = iTrs[iTrs.length-1];
	}
	useRow.appendChild(addNewImg);
	
	tBody.appendChild(useRow);
	imgTable.appendChild(tBody);
	
	
	var hid = document.getElementById('hidden_'+index);
	var hidVal = hid.getAttribute("value");
	var addSrc = iSrc.replace('../thumbs/','');
	if (hidVal == "") {
		hid.setAttribute('value',addSrc);
	} else {
		hid.setAttribute('value',hidVal+','+addSrc);
	}
	
}

function updateImg(index,iSrc,cid) {
	
	var iParts = index.split("_");
	var preset;
	if (iParts[0] == 'image') {
		preset = 'images';
	} else if (iParts[0] == 'action') {
		preset = 'action_shot';
	} else {
		preset = iParts[0];
	}
	
	// get all tds from imgTable
	var imgTable = document.getElementById('imgTable_'+index);
	var tBody = imgTable.getElementsByTagName("tbody")[0];
	var iTrs = imgTable.getElementsByTagName("tr");
	var iTds;
	var ccc = 0;
	var uPos;
	for (i=0; i<iTrs.length; i++) {
		iTds = iTrs[i].getElementsByTagName("td");
		for (j=0; j<iTds.length; j++) {

			if (iTds[j].getAttribute('id') == cid) {
				uPos = ccc;
				img = iTds[j].getElementsByTagName("img")[0];
				img.setAttribute('src','../'+iSrc);
				As = iTds[j].getElementsByTagName("a");
				As[0].setAttribute('href','javascript:openImgEditor(\''+iSrc+'\',\''+preset+'\',\''+index+'\',\''+cid+'\');');
				As[1].setAttribute('href','javascript:openImgEditor(\''+iSrc+'\',\''+preset+'\',\''+index+'\',\''+cid+'\');');
				break;
			}
			ccc++;
		}
	}

	var hid = document.getElementById('hidden_'+index);
	var hidVal = hid.getAttribute("value");
	var vCount = hidVal.split(',');
	var remSrc = iSrc;
	var newVal = '';
	for (i=0; i<vCount.length; i++) {
		if (i != 0) {
			newVal += ",";
		}
		if (i != uPos) {
			newVal += vCount[i];
		} else {
			newVal += iSrc;	
		}
	}
	hid.setAttribute('value',newVal);
}

function removeImgFromGal(index,cid) {
	
	// get all tds from imgTable
	var imgTable = document.getElementById('imgTable_'+index);
	var tBody = imgTable.getElementsByTagName("tbody")[0];
	var iTrs = imgTable.getElementsByTagName("tr");
	var iTds;
	var img;
	var iSrc;
	var ccc = 0;
	var rPos;
	var removed = false;
	for (i=0; i<iTrs.length; i++) {
		iTds = iTrs[i].getElementsByTagName("td");
		if (removed == false) {
			for (j=0; j<iTds.length; j++) {
				
				if (iTds[j].getAttribute('id') == cid) {
					img = iTrs[i].getElementsByTagName("img")[0];
					iSrc = img.getAttribute('src');
					iTrs[i].removeChild(iTds[j]);
					removed = true;
					rPos = ccc;
				}
				ccc++;
			}
		} else {
			var changeRow = iTds[0];
			iTrs[i].removeChild(changeRow);
			iTrs[i-1].appendChild(changeRow);
		}
	}
	
	var hid = document.getElementById('hidden_'+index);
	var hidVal = hid.getAttribute("value");
	var vCount = hidVal.split(',');
	var remSrc = iSrc.replace('images/','');
	var newVal = '';
	for (i=0; i<vCount.length; i++) {
		if (i != rPos) {
			if (i != 0 && vCount.length > 2) {
				newVal += ",";
			}
			newVal += vCount[i];
		}
	}
	hid.setAttribute('value',newVal);
}


function updateSingle(index,iSrc) {
	
	var iParts = index.split("_");
	var preset;
	if (iParts[0] == 'image') {
		preset = 'images';
	} else if (iParts[0] == 'action') {
		preset = 'action_shot';
	} else {
		preset = index;
	}

	// get all tds from imgTable
	var imgTable = document.getElementById('imgTable_'+index);
	var tBody = imgTable.getElementsByTagName("tbody")[0];
	var iTrs = imgTable.getElementsByTagName("tr")[0];
	var iTd = iTrs.getElementsByTagName("td")[0];
	
	img = iTd.getElementsByTagName("img")[0];
	img.setAttribute('src',iSrc);
	
	As = iTd.getElementsByTagName("a");
	if (As.length == 1) {
		txt = As[0].childNodes[As[0].childNodes.length-1];
		As[0].removeChild(txt);
		As[0].setAttribute('href','javascript:openImgEditor(\''+iSrc+'\',\''+preset+'\',\''+index+'\');');
		ed = document.createElement("a");
		ed.setAttribute('href','javascript:openImgEditor(\''+iSrc+'\',\''+preset+'\',\''+index+'\');');
		edText = document.createTextNode("Edit");
		iTd.appendChild(ed);
	} else {
		As[0].setAttribute('href','javascript:openImgEditor(\''+iSrc+'\',\''+preset+'\',\''+index+'\');');
		As[1].setAttribute('href','javascript:openImgEditor(\''+iSrc+'\',\''+preset+'\',\''+index+'\');');
	}

	var hid = document.getElementById('hidden_'+index);
	hid.setAttribute('value',iSrc);
}