// JavaScript Document
function pv_animhit(obj) {
	if (document.getElementById('formdiv_approvalmodule') == null) {
		return false;
	}
	var viewTextGroup = obj.id;
	locationID = viewTextGroup.replace(new RegExp('dataholder_','g'),''); 
	if (document.getElementById('formdiv_' + locationID).style.visibility == 'hidden') {
		var fadeObj = obj;
		var tempOverlay = document.getElementById('rbTempOverlay_' + viewTextGroup); 
		if (tempOverlay == undefined) {
			var formData = "<div id=\"rbTempOverlay_" + viewTextGroup + "\" style=\"background-color:#FFCC33;position:absolute;\" onClick=\"pv_toggle_editor('" + locationID + "'); clear_animhit(this); \"></div>";
			document.body.insertAdjacentHTML('beforeEnd', formData);
			tempOverlay = document.getElementById('rbTempOverlay_' + viewTextGroup); 
		}
		
		
		tempOverlay.style.left = findPosX(fadeObj) + 'px';
		tempOverlay.style.top = findPosY(fadeObj) + 'px';
		tempOverlay.style.width = fadeObj.offsetWidth + 'px';
		tempOverlay.style.height = fadeObj.offsetHeight + 'px';
		tempOverlay.style.visibility = 'visible';
		
		
		var removeElement = function() {   
			var el = this.getEl();   
			//el.style.visibility = 'hidden';
			if (el != null && el.parentNode != null) {
				el.parentNode.removeChild(el);  
			}
		}   
		
		var anim = new YAHOO.util.Anim(tempOverlay.id, { opacity: { from: .5, to: 0 } }, 1.75, YAHOO.util.Easing.easeOut);
		anim.onComplete.subscribe(removeElement); 
		anim.animate(); 
	}
}


function pv_hide_editor(locationID) {
var formdiv = document.getElementById('formdiv_' + locationID);

	if (formdiv.style.visibility == 'visible') {
		formdiv.style.visibility = "hidden";

		formdiv.style.zIndex = "1";
		if (BrowserDetect.browser == "Explorer") {
			fix_eolas(document.getElementById('dataholder_' + locationID));
		}
	} 
	
	document.getElementById('submit_' + locationID).style.visibility = "hidden";
	document.getElementById('cancel_' + locationID).style.visibility = "hidden";
}


function pv_show_editor(locationID) {
var formdiv = document.getElementById('formdiv_' + locationID);
var formdiv_coord = YAHOO.util.Dom.getXY(formdiv); 
		
		formdiv.style.visibility = "visible";

		formdiv.style.position = "absolute";
		formdiv.style.zIndex = "10000000";
		formdiv.style.backgroundColor = "#FFFFFF";
		
		YAHOO.util.Dom.setXY(formdiv, formdiv_coord);   
	
		getForm(locationID, '/includes/editsystem/picvideoComm.aspx');
	
		formdiv.style.border = "2px dashed #c6191f";
		document.getElementById('submit_' + locationID).style.visibility = "visible";
		document.getElementById('cancel_' + locationID).style.visibility = "visible";
}

function pv_toggle_editor(locationID) {
	var formdiv = document.getElementById('formdiv_' + locationID);
	
	//if open, put data back in data holder and close out form
	if (formdiv.style.visibility == 'visible') {
		formdiv.style.visibility = "hidden";

		formdiv.style.zIndex = "1";
		if (BrowserDetect.browser == "Explorer") {
			fix_eolas(document.getElementById('dataholder_' + locationID));
		}
	} else { //if closed, open up form and make dataholder invisible
		
		

		var formdiv_coord = YAHOO.util.Dom.getXY(formdiv); 
		
		formdiv.style.visibility = "visible";

		formdiv.style.position = "absolute";
		formdiv.style.zIndex = "10000000";
		formdiv.style.backgroundColor = "#FFFFFF";
		
		YAHOO.util.Dom.setXY(formdiv, formdiv_coord);   
	
		getForm(locationID, '/includes/editsystem/picvideoComm.aspx');
	
		formdiv.style.border = "2px dashed #c6191f";	
	}
}

function pv_addvidrow(locationID) {
	var guid=Math.floor(Math.random()*9999999);
	var container = document.getElementById("vidrowholder_" + locationID);
	var newDiv = "<div id='vidrow_" + guid + "' style='border:1px solid #666666;'>Link:<input type='text' name='data' id='data_" + guid + "' ><br/>Title:<input type='text' name='data' ><a href='javascript:;' onclick='delvidrow(" + guid +")'>delete</a></div>"
	container.insertAdjacentHTML('beforeEnd', newDiv);
}

function pv_addpicrow(locationID) {
	var guid=Math.floor(Math.random()*9999999);
	var container = document.getElementById("picrowholder_" + locationID);
	var newDiv = "<div id='picrow_" + guid + "'><input type='text' name='data' id='data_" + guid + "' ><input type='button' value='Browse Server' onclick=\"pv_BrowseServer('data_" + guid + "');\" /><a href='javascript:;' onclick='delpicrow(" + guid +")'>delete</a></div>"
	container.insertAdjacentHTML('beforeEnd', newDiv);
}
var lastOpened = '';
function pv_BrowseServer(objID)
{
	// You can use the "CKFinder" class to render CKFinder in a page:
	lastOpened = objID;
	var finder = new CKFinder() ;
	finder.BasePath = '/FCKeditor/ckfinder/' ;
	finder.SelectFunction = SetFileField;
	finder.Popup() ;
}

function SetFileField( fileUrl )
{
	if(fileUrl.toLowerCase().indexOf('.jpg') == -1 && fileUrl.toLowerCase().indexOf('.jpeg') == -1) {
		alert('Sorry, only jpg files are compatible with the picture swapper. This file cannot be used.');	
	} else {
		document.getElementById( lastOpened ).value = fileUrl ;
	}
}

function swapVideo(obj, fillobjid, width, height) {
	var vid = obj.options[obj.selectedIndex].value;
	vid = vid.replace(new RegExp('watch','g'),'').replace(new RegExp('=','g'),'/').replace(new RegExp('\\?','g'),'');
	
	var fillObj = document.getElementById(fillobjid);
	
	var newHTML = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="' + width + '" height="' + height + '"><param name="movie" value="' + vid + '"></param><param name="wmode" value="transparent"></param><embed src="' + vid + '" type="application/x-shockwave-flash" wmode="transparent" width="' + width + '" height="' + height + '"></embed></object>';
	
	fillObj.innerHTML = newHTML;
}

function changePicvidForm(changeToType, locationID) {
	var data = document.getElementById("adm_" + locationID).value;
	var changeFromType;
	if (changeToType == 'pic') {
		changeFromType = 'vid';
	} else if (changeToType == 'vid') {
		changeFromType = 'pic';
	}
	var newdata = data.replace(new RegExp('^' + changeFromType,'g'),changeToType);
	if (data != newdata) {
		document.getElementById("adm_" + locationID).value = newdata;
	
		getForm(locationID, '/includes/editsystem/picvideoComm.aspx');
	}
}

function delpicrow(num) {
	var tmp = document.getElementById('picrow_' + num);	
	tmp.parentNode.removeChild(tmp);  
}
function delvidrow(num) {
	var tmp = document.getElementById('vidrow_' + num);	
	tmp.parentNode.removeChild(tmp);  
}

function fix_eolas(obj){
	var objects = obj.getElementsByTagName("object");
	for (var i = 0; i < objects.length; i++) {
	
	var o = objects[i];
	var h = o.outerHTML;
	var params = "";
	// Need to take care of each node because IE strips out Flashvars
	// if you just copy the object
	for (var j = 0; j<o.childNodes.length; j++) {
	var p = o.childNodes[j];
	if (p.tagName == "PARAM"){
	params += p.outerHTML;
	}
	}
	var tag = h.split(">")[0] + ">";
	var newObject = tag + params + o.innerHTML + " </object>";
	objects[i].outerHTML = newObject;
	}
	}
	
	function addEvent(obj, evType, fn){
	if (obj.addEventListener){
	obj.addEventListener(evType, fn, false);
	return true;
	}
	else if (obj.attachEvent){
	var r = obj.attachEvent("on"+evType, fn);
	return r;
	}
	else {
	return false;
	}
}

function validatePicVideo(locationID, type) {
	var obj_form = document.getElementById('form_' + locationID);
	
		
	for ( var i = 2; i < obj_form.data.length; i ++ ) {
		if ( trim(obj_form.data [ i ].value) == '') {
			i = -1;
			break;
		}		
		if (type == 'pic') {
			if ((trim(obj_form.data [ i ].value).toLowerCase()).indexOf('.jpg') == -1 && trim(obj_form.data [ i ].value).toLowerCase().indexOf('.jpeg') == -1)	{	
				alert('One of your pictures is not a jpg file (' + trim(obj_form.data [ i ].value)  + '). Only jpg files are compatible with the picture swapper.');
				
				return false;
			}
		} 
	}
	
	if (i == -1) {
		alert('Please fill in all fields, or delete unused items using the "delete" link');
		return false;
	}
	
	
	//This line is only executed if "return false" isn't called earlier
	submitData(document.getElementById('submit_' + locationID));
}