/////////////////////////////////////////////////////////////////////

var FloatLayers       = new Array();
var FloatLayersByName = new Array();

function addFloatLayer(n,offX,offY,spd){new FloatLayer(n,offX,offY,spd);}
function getFloatLayer(n){return FloatLayersByName[n];}
function alignFloatLayers(){for(var i=0;i<FloatLayers.length;i++)FloatLayers[i].align();}

function getXCoord(el) {
	x=0;
	while(el){
		x+=el.offsetLeft;
		el=el.offsetParent;
	}
	return x;
}
function getYCoord(el) {
	y=0;
	while(el){
		y+=el.offsetTop;
		el=el.offsetParent;
	}
	return y;
}

/////////////////////////////////////////////////////////////////////

FloatLayer.prototype.setFloatToTop=setTopFloater;
FloatLayer.prototype.setFloatToBottom=setBottomFloater;
FloatLayer.prototype.setFloatToLeft=setLeftFloater;
FloatLayer.prototype.setFloatToRight=setRightFloater;
FloatLayer.prototype.initialize=defineFloater;
FloatLayer.prototype.adjust=adjustFloater;
FloatLayer.prototype.align=alignFloater;

function FloatLayer(n, offX, offY, spd) {
	this.index=FloatLayers.length;

	FloatLayers.push(this);
	FloatLayersByName[n] = this;

	this.name    = n;
	this.floatX  = 0;
	this.floatY  = 0;
	this.tm      = null;
	this.steps   = spd;
	this.alignHorizontal=(offX>=0) ? leftFloater : rightFloater;
	this.alignVertical  =(offY>=0) ? topFloater : bottomFloater;
	this.ifloatX = Math.abs(offX);
	this.ifloatY = Math.abs(offY);
}

/////////////////////////////////////////////////////////////////////

function defineFloater(){
	this.layer  = document.getElementById(this.name);
	if (this.layer) {
	this.width  = this.layer.offsetWidth;
	this.height = this.layer.offsetHeight;
	this.prevX  = this.layer.offsetLeft;
	this.prevY  = this.layer.offsetTop;
	}
}

function adjustFloater() {
	this.tm=null;
	if (this.layer) {
	if(this.layer.style.position!='absolute')return;

	var dx = Math.abs(this.floatX-this.prevX);
	var dy = Math.abs(this.floatY-this.prevY);

	if (dx < this.steps/2)
		cx = (dx>=1) ? 1 : 0;
	else
		cx = Math.round(dx/this.steps);

	if (dy < this.steps/2)
		cy = (dy>=1) ? 1 : 0;
	else
		cy = Math.round(dy/this.steps);

	if (this.floatX > this.prevX)
		this.prevX += cx;
	else if (this.floatX < this.prevX)
		this.prevX -= cx;

	if (this.floatY > this.prevY)
		this.prevY += cy;
	else if (this.floatY < this.prevY)
		this.prevY -= cy;

	this.layer.style.left = this.prevX;
	this.layer.style.top  = this.prevY;

	if (cx!=0||cy!=0){
		if(this.tm==null)this.tm=setTimeout('FloatLayers['+this.index+'].adjust()',50);
	}else
		alignFloatLayers();
	}
}

function setLeftFloater(){this.alignHorizontal=leftFloater;}
function setRightFloater(){this.alignHorizontal=rightFloater;}
function setTopFloater(){this.alignVertical=topFloater;}
function setBottomFloater(){this.alignVertical=bottomFloater;}

function leftFloater(){this.floatX = document.body.scrollLeft + this.ifloatX;}
function topFloater(){this.floatY = document.body.scrollTop + this.ifloatY;}
function rightFloater(){this.floatX = document.body.scrollLeft + document.body.clientWidth - this.ifloatX - this.width;}
function bottomFloater(){this.floatY = document.body.scrollTop + document.body.clientHeight - this.ifloatY - this.height;}

function alignFloater(){
	if(this.layer==null)this.initialize();
	this.alignHorizontal();
	this.alignVertical();
	if(this.prevX!=this.floatX || this.prevY!=this.floatY){
		if(this.tm==null)this.tm=setTimeout('FloatLayers['+this.index+'].adjust()',50);
	}
}
function alertSize(returnType) {
  var myWidth = 0, myHeight = 0;
  if( typeof( window.innerWidth ) == 'number' ) {
    //Non-IE
    myWidth = window.innerWidth;
    myHeight = window.innerHeight;
  } else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
    //IE 6+ in 'standards compliant mode'
    myWidth = document.documentElement.clientWidth;
    myHeight = document.documentElement.clientHeight;
  } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
    //IE 4 compatible
    myWidth = document.body.clientWidth;
    myHeight = document.body.clientHeight;
  }
  if (returnType == "returnWidth") {
    return myWidth;
  } else {  
    return myHeight;
  }
  //window.alert( 'Width = ' + myWidth );
 // window.alert( 'Height = ' + myHeight );
}
function detach(){
	floatWidth = -10;
	floatHeight = -10;
new FloatLayer('floatlayer',floatWidth,floatHeight,10);
	lay=document.getElementById('floatlayer');
	if (lay) {
	l=getXCoord(lay);
	t=getYCoord(lay);
	lay.style.position='absolute';
	lay.style.top=t;
	lay.style.left=l;
	getFloatLayer('floatlayer').initialize();
	alignFloatLayers();
	}
}



currentTabGroup = 1;
totalTabGroups = 3;

var isIE = false;      // Microsoft Internet Explorer
var isNS4 = false;     // Netscape 4+
var isW3C = false;     // W3C compliant (inc NS6 & 7)
var isUnknown = true;  // in case something else comes along

  if (document.getElementById) {
    isW3C = true ; // NS6+, MSIE 5+, Mozilla, Opera 6 in Opera (W3C) mode
    isUnknown = false;
  }
  if (document.all) {
    isIE = true ; // MSIE (all versions) and Opera 6 in MSIE 5 mode
		coll = "all."
		styleObj = ".style"
    isUnknown = false;
  }
  if (document.layers) {
    isNS4 = true ; // NS 4
    isUnknown = false;
  }
  
accessLogArray = new Array();
accessLogCurrent = null;

function addAccessLogEntry(thisID) {
 accessLogArray[accessLogArray.length] = thisID;
}

function getObject(obj) {
	var theObj
	if (isIE) {
		theObj = eval("document." + coll + obj + styleObj)
	} else if (isW3C) {
		theObj = eval(document.getElementById(objName).style);
	} else {
		theObj = obj
	}
	return theObj
}

function toggleTabs(tabDirection)
{ 
baseName = "tabgroup";
itemNumber = currentTabGroup + tabDirection;
if (itemNumber > totalTabGroups) {
	itemNumber = totalTabGroups;
}
if (itemNumber < 1) {
	itemNumber = 1;
}
currentTabGroup = itemNumber;
	objName = baseName + itemNumber;
	currentobj = getObject(objName);
    if (currentobj.style)
    {
      currentobj = currentobj.style;
	}

	visStr = 'block';

	currentobj.display = visStr;
	objCounter = 1;
	while (objCounter <= totalTabGroups) {
		if (objCounter != itemNumber) {
			objName = baseName + objCounter;
			currentobj = getObject(objName);
			if (currentobj.style){
      			currentobj = currentobj.style;
			}
			visStr = 'none';
			currentobj.display = visStr;
		}
		objCounter++;
	}
}

//cookie functions from http://www.webmasterbase.com/static/popjs.php
function getCookieVal (offset) {
var endstr = document.cookie.indexOf (";", offset);
if (endstr == -1)
endstr = document.cookie.length;
return unescape(document.cookie.substring(offset, endstr));
}

function GetCookie (name) {
var arg = name + "=";
var alen = arg.length;
var clen = document.cookie.length;
var i = 0;
while (i < clen) {
var j = i + alen;
if (document.cookie.substring(i, j) == arg)
return getCookieVal (j);
i = document.cookie.indexOf(" ", i) + 1;
if (i == 0)
break;
}
return null;
}

function SetCookie (name, value) {
var argv = SetCookie.arguments;
var argc = SetCookie.arguments.length;
var expires = (2 < argc) ? argv[2] : null;
var path = (3 < argc) ? argv[3] : null;
var domain = (4 < argc) ? argv[4] : null;
var secure = (5 < argc) ? argv[5] : false;
document.cookie = name + "=" + escape (value) +
((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
((path == null) ? "" : ("; path=" + path)) +
((domain == null) ? "" : ("; domain=" + domain)) +
((secure == true) ? "; secure" : "");
}


var rowShow=(document.all?'block':'table');

function startCategory(categoryId) {
if (categoryId) {
		    cat_elem = document.getElementById('portCatLeftNav_'+categoryId);  
		    cat_link = document.getElementById('portCatLinkNav_'+categoryId);    
    if(cat_elem != null){    	
		cat_elem.className = 'catnavheadon';	
		cat_link.className = 'sidelinkboldon';
    }
   }
   }

function showFeedbackBox(feedbackAllowed) {
	if (feedbackAllowed) {
    	feedbackBox = document.getElementById('floatlayer');    
    	feedbackBox.style.display='inline';
	} else {
    	feedbackBox = document.getElementById('floatlayer'); 
		feedbackBox.style.display='none';
	}	
}   
   
function showElement(elementId, categoryId) {
   var contentCell = document.getElementById('contentCell');	
for (x=0; x<elements.length; x++)
{
	if(elements[x] == elementId){
		contentCell.innerHTML = elementsContent[x];
	}
}
   
   if (document.getElementById('contentDiv')) {
	isContentDiv = document.getElementById('contentDiv').innerHTML;
	if (isContentDiv.length == 0) {
    	printerfriendlyLink = document.getElementById('printContentLink2');    
    	printerfriendlyLink.style.display='none';
	}
	
   }

	if(viewMode == 'showFeedback'){
		loadIframe('addFeedbackFrame','/portfolios/viewFeedback?mode=add&id='+elementId+'&portfolioId='+portId);
	}
   
    var port_elem, reflection_elem, nav_elem;

    resetPortfolio();

    /*
    port_elem = document.getElementById('portfolioElement_'+elementId);
    if(port_elem != null){
	    port_elem.style.display=rowShow;
    }
    */
    nav_elem = document.getElementById('portLinkLeftNav_'+elementId);   
    if(nav_elem != null){    		
	nav_elem.className = 'sidelinkbold';	
    }
    //initLinks();
   if (categoryId) {
   	for (x=0; x<elements.length; x++)
	{  
    	cat_elem = document.getElementById('portCatLeftNav_'+elements[x]);
    	if(cat_elem != null){
		  cat_elem.className = 'catnavheadoff';  
    	}   
    	cat_link = document.getElementById('portCatLinkNav_'+elements[x]);
    	if(cat_link != null){
	  		cat_link.className = 'sidelinkboldoff';  
    	}    
	}	
	cat_elem = document.getElementById('portCatLeftNav_'+categoryId);  
	cat_link = document.getElementById('portCatLinkNav_'+categoryId);    
    if(cat_elem != null){    	
		cat_elem.className = 'catnavheadon';	
		cat_link.className = 'sidelinkboldon';
    }
	//if (viewMode == 'showFeedback') {
		//document.bottom_frame.location = '/portfolios/viewFeedback?id='+elementId+'&portfolioId='+portfolioId;
	//}
   }
}

function updateDownloadLink(){
	var downloadLink = document.getElementById('downloadLink');
	var includeFeedback = document.getElementById('includeFeedback');
	downloadLink.href = '/downloadPortfolio?includeFeedback=' + includeFeedback.checked;
}
function showPortfolio() {	
    var port_elem;
    resetPortfolio();
   var contentCell = document.getElementById('contentCell');
   contentCell.innerHTML = portfolioContent;
if (accessLogCurrent) {
	toggleAccessLog(accessLogCurrent);
} else {
	startAccessLog();
	}
//initLinks();
	if (viewMode == 'showFeedback') {
		loadIframe('feedbackFrame','/portfolios/viewFeedback?id='+portfolioId+'&portfolioId='+portfolioId);
		loadIframe('addFeedbackFrame','/portfolios/viewFeedback?mode=add&id='+portfolioId+'&portfolioId='+portfolioId);
	}
}

function showPortfolioReflections() {    
    var contentLink, reflectionsLink, reflectionsRow, contentRow, printLink;
    
    contentLink = document.getElementById('showContentLink');        
    contentLink.style.display=rowShow;
    reflectionsLink = document.getElementById('showReflectionsLink');    
    reflectionsLink.style.display='none';
	if (document.getElementById('showFeedbacksLink')) {
    	feedbacksLink = document.getElementById('showFeedbacksLink');    
    	feedbacksLink.style.display='none';
	}
    reflectionsRow = document.getElementById('reflectionsRow');    
    reflectionsRow.style.display=rowShow;
    contentRow = document.getElementById('contentRow');    
    contentRow.style.display='none';
	if (document.getElementById('printContentLink2')) {
    	printLink = document.getElementById('printContentLink2');    
    	printLink.style.display='none';    
	}
}

function viewEntirePortfolio(){	
	var mainTable, viewAllTable;

	mainTable = document.getElementById('mainTable');	
	viewAllTable = document.getElementById('viewAllTable');	

	mainTable.style.display='none';
	viewAllTable.innerHTML=viewEntirePortfolioContent;
	viewAllTable.style.display=rowShow;	
	//initLinks();
}

function viewNavigationPortfolio(){
	var mainTable, viewAllTable;

	mainTable = document.getElementById('mainTable');
	viewAllTable = document.getElementById('viewAllTable');

	mainTable.style.display=rowShow;
	viewAllTable.style.display='none';	
}
// Dynamic Iframe loader
function loadIframe(id, theURL) {
	document.getElementById(id).src=theURL;
}

// resizes Iframe according to content
function resizeMe(obj){
	//alert('resizeMe called');
feedbackFrame = document.getElementById('feedbackFrame'); 
docHeight = obj.contentWindow.document.body.scrollHeight;
//alert('docHeight='+docHeight);
 obj.style.height = (docHeight + 30) + 'px';
 }
 
 function resizeMe(obj, elementName){
	//alert('resizeMe called');
feedbackFrame = document.getElementById(elementName); 
docHeight = obj.contentWindow.document.body.scrollHeight;
//alert('docHeight='+docHeight);
 obj.style.height = (docHeight + 30) + 'px';
 }

function showPortfolioFeedbacks(portfolioId, elementId) {
	//alert('showPortfolioFeedbacks called');
    var contentLink, feedbacksLink, feedbacksRow, contentRow, printLink;
    
    contentLink = document.getElementById('showContentLink');        
    contentLink.style.display=rowShow;
    feedbacksLink = document.getElementById('showFeedbacksLink');    
    feedbacksLink.style.display='none';
	if (document.getElementById('showReflectionsLink')) {
    	reflectionsLink = document.getElementById('showReflectionsLink');    
    	reflectionsLink.style.display='none';
    }
	feedbacksRow = document.getElementById('feedbacksRow');    
    feedbacksRow.style.display=rowShow;
    contentRow = document.getElementById('contentRow');    
    contentRow.style.display='none';
	if (document.getElementById('printContentLink2')) {
    	printLink = document.getElementById('printContentLink2');    
    	printLink.style.display='none';    
	}  
	
	if(viewMode == 'showFeedback'){
		loadIframe('feedbackFrame','/portfolios/viewFeedback?id='+elementId+'&portfolioId='+portfolioId);
	}
}

function toggleRubric(rubricID) {    
    var rubTable; 
    rubTable = document.getElementById(rubricID); 
	if (rubTable.style.display == rowShow) {
		rubTable.style.display='none';
	} else {
		rubTable.style.display=rowShow;
	}
}

function startAccessLog() {
	if (document.getElementById("accessLogDropdown")) {
	accessMenu = document.getElementById("accessLogDropdown");
	accessFirstOption = accessMenu.value;
	toggleAccessLog(accessFirstOption);
	}
}

function toggleAccessLog(accessID) {    
    var accessTable; 
	var foundAccess = 0;
	for (i=0; i < accessLogArray.length; i++) {
		accessTableLoop = document.getElementById(accessLogArray[i]);
		if (accessLogArray[i] == accessID) {
			foundAccess = 1;
			accessMenu = document.getElementById("accessLogDropdown");
			accessMenu.value = accessID;
		} else {
		    accessTableLoop.style.display='none';
		}
	}
	accessLogCurrent = accessID;
	if (foundAccess == 0) {
		accessLogArray[accessLogArray.length] = accessID;
	}
    accessTable = document.getElementById(accessID); 
	if (accessTable.style.display == rowShow) {
		accessTable.style.display='none';
	} else {
		accessTable.style.display=rowShow;
	}
}

function resetPortfolio(){
    var port_elem, reflection_elem, nav_elem, nav_elem2, left_nav_table, cat_tab ;
var x=0;

for (x=0; x<elements.length; x++)
{
    nav_elem = document.getElementById('portLinkLeftNav_'+elements[x]);
    if(nav_elem != null){
	  nav_elem.className = 'sidelinktext';  
    }    
}	
}

function resetCategories(){
    var left_nav_table, cat_tab, cat_tab_start_image ;
var x=0;

for (x=0; x<elements.length; x++)
{
    left_nav_table = document.getElementById('catLeftNavItems_'+elements[x]);
    if(left_nav_table != null){
	    left_nav_table.style.display='none';
    }
    cat_tab = document.getElementById('catTab_'+elements[x]);
    if(cat_tab != null){
	    cat_tab.className='tabcell';
    }
	cat_text = document.getElementById('portLinkTabNav_' + elements[x]);
	if (cat_text != null) {
		cat_text.className='tabtextinactive'
	}
    cat_tab_start_image = document.getElementById('tabStartImage_'+elements[x]);
    if(cat_tab_start_image != null){
	    cat_tab_start_image.src=baseSrc+"off.gif";	    
    }    
    cat_tab_end_image = document.getElementById('tabEndImage_'+elements[x]);
    if(cat_tab_end_image != null){
	    cat_tab_end_image.src=baseEndSrc+"off.gif";	    
    }   
    cat_tab_left_cell = document.getElementById('catTabLeft_'+elements[x]);
    if(cat_tab_left_cell != null){
	    cat_tab_left_cell.className='tabcell';    
    }  
    cat_tab_right_cell = document.getElementById('catTabRight_'+elements[x]);
    if(cat_tab_right_cell != null){
	    cat_tab_right_cell.className='tabcell';   
    }  
    cat_tab_btm_cell = document.getElementById('catTabBtm_'+elements[x]);
    if(cat_tab_btm_cell != null){
	    cat_tab_btm_cell.className='tabcellbtm';   
    }  
    
}	
}

var viewMode;
var panel1;
var portId;
function initPortfolio(elementId, portfolioId, in_viewMode) {
   viewMode = in_viewMode;   	   
   portId=portfolioId;
     

   showCategoryTab(elementId);
   //simulateClick(elementId);
   //showElement(elementId);
}

function simulateClick(elementId) {
    var left_nav_elem, cat_tab_elem;
            
    left_nav_elem = document.getElementById('portLinkLeftNav_'+elementId);
    if(left_nav_elem != null){
	    showElement(elementId);
	    
    }
    cat_tab_elem = document.getElementById('portLinkTabNav_'+elementId);
    if(cat_tab_elem != null){
	    showCategoryTab(elementId);
    }
	
}

function initLinks(){
var linkId,elementId;
var uindex;
if(viewMode == 'showFeedback'){
   

	for(var i = 0; i < document.links.length; i++) {
	   linkId = document.links[i].id;
	   uindex = linkId.indexOf('_');      
	   //alert ("catlink: " + (linkId.indexOf('portCatLink')!=-1));
	   if((linkId.length > 0) && (linkId.indexOf('portLink')!=-1)){	 		
		elementId = linkId.substring(uindex+1, linkId.length);	
		document.links[i].target = 'bottom_frame';
		document.links[i].href = '/portfolios/viewFeedback?id='+elementId+'&portfolioId='+portfolioId;
	   }
	   if((linkId.length > 0) && (linkId.indexOf('portCatLink')!=-1)){	 		
		elementId = linkId.substring(uindex+1, linkId.length);	
		document.links[i].target = 'bottom_frame';
		document.links[i].href = '/portfolios/viewFeedback?id='+elementId+'&portfolioId='+portfolioId;
	   }
	}
}
}

function showCategoryTab(elementId) {
    var left_nav_table, cat_tab, cat_tab_start_image;    
    resetCategories();
    showElement(elementId);
    left_nav_table = document.getElementById('catLeftNavItems_'+elementId);
    if(left_nav_table != null){
	    left_nav_table.style.display=rowShow;
    }
    cat_tab = document.getElementById('catTab_'+elementId);
    if(cat_tab != null){
	    cat_tab.className='tabcellcurrent';
    }
	cat_text = document.getElementById('portLinkTabNav_' + elementId);
	if (cat_text != null) {
		cat_text.className='tabtext'
	}
    cat_tab_start_image = document.getElementById('tabStartImage_'+elementId);
    if(cat_tab_start_image != null){
	    cat_tab_start_image.src=baseSrc+"on.gif";	    
    }   
    cat_tab_end_image = document.getElementById('tabEndImage_'+elementId);
    if(cat_tab_end_image != null){
	    cat_tab_end_image.src=baseEndSrc+"on.gif";	    
    }  
    cat_tab_left_cell = document.getElementById('catTabLeft_'+elementId);
    if(cat_tab_left_cell != null){
	    cat_tab_left_cell.className='tabcellcurrent';    
    }  
    cat_tab_right_cell = document.getElementById('catTabRight_'+elementId);
    if(cat_tab_right_cell != null){
	    cat_tab_right_cell.className='tabcellcurrent';   
    }  
    cat_tab_btm_cell = document.getElementById('catTabBtm_'+elementId);
    if(cat_tab_btm_cell != null){
	    cat_tab_btm_cell.className='tabcellbtmon';   
    }  
}

function openWindowFull(url) {
	w=835;
	h=550;
    var winl = (screen.width - w) / 2 +30 ;
    var wint = (screen.height - h) / 2 +30 ;
	winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars=1'
	newWindow = window.open(url, "popupwindow", winprops);
}

function openWindowSmall(url) {
	w=400;
	h=250;
    var winl = (screen.width - w) / 2 +30 ;
    var wint = (screen.height - h) / 2 +30 ;
	winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars=1'
	newWindow = window.open(url, "smallwindow", winprops);
}

function printElement(elementId) {   	
	w=835;
	h=550;
	var winl = (screen.width - w) / 2 +30 ;
	var wint = (screen.height - h) / 2 +30 ;
	var printLink, printLink2, printLink3, contentDiv, contentFrame;
	winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars=1,'+'menubar=1';
	contentFrame = document.getElementById('portLinkViewEntire_Content_'+elementId);
	window.open(contentFrame.src, "popupwindow", winprops);
	
	/*
	for (x=0; x<elements.length; x++)
	{
		if(elements[x] == elementId){
			newWindow.document.write(elementsContent[x]);
			contentDiv = newWindow.document.getElementById('contentDiv');
			contentFrame = newWindow.document.getElementById('portLinkViewEntire_Content_'+elementId);			
			if(contentFrame != null){				
				resizeMe(contentFrame, 'portLinkViewEntire_Content_'+elementId);
			}
			if (newWindow.document.getElementById('showFeedbacksLink')) {
    			feedbacksLink = newWindow.document.getElementById('showFeedbacksLink');    
    			feedbacksLink.style.display='none';
			}
			if(contentDiv != null){				
				contentDiv.style.overflow='';
				contentDiv.style.height='';
			}
			printLink = newWindow.document.getElementById('printContentLink');
			if(printLink != null){			
				printLink.style.display='none';
			}
			printLink2 = newWindow.document.getElementById('printContentLink2');
			if(printLink2 != null){
				printLink2.style.display='none';
			}
			printLink3 = newWindow.document.getElementById('showReflectionsLink');
			if(printLink3 != null){
				printLink3.style.display='none';
			}
		    x = elements.length;

						
		}
	}	

	*/
   	   
}
function createLoadingPanel(header, width) {
var Dom = YAHOO.util.Dom,
        Event = YAHOO.util.Event,
        layout = null,
        resize = null;

        // Setup constants

		// QUIRKS FLAG, FOR BOX MODEL
		var IE_QUIRKS = (YAHOO.env.ua.ie && document.compatMode == "BackCompat");

		// UNDERLAY/IFRAME SYNC REQUIRED
		var IE_SYNC = (YAHOO.env.ua.ie == 6 || (YAHOO.env.ua.ie == 7 && IE_QUIRKS));

		// PADDING USED FOR BODY ELEMENT (Hardcoded for example)
		var PANEL_BODY_PADDING = (10*2) // 10px top/bottom padding applied to Panel body element. The top/bottom border width is 0
	panel1 = new YAHOO.widget.Panel("panel2", 
			{ width:"950px",	
			  height:"450px",		  
			  visible:false, 
			  draggable:true,
			  modal:true,
			  close:true } );
	panel1.setHeader(header);
	panel1.setBody("<center><img src=\"/images/anim_layers.gif\" /><br/>LOADING...</center>");
	panel1.render(document.body);
	panel1.center();
	panel1.show();		
    YAHOO.util.Dom.setStyle(panel1.body, 'display', 'block');
        resize = new YAHOO.util.Resize('panel2', {
			handles: ['br'],
            autoRatio: true,
            status: false,
            minWidth: 550,
            minHeight: 295
        });

		
            var panelHeight = 450;
			var headerHeight = panel1.header.offsetHeight; // Content + Padding + Border
			var bodyHeight = (panelHeight - headerHeight);
			var bodyContentHeight = (IE_QUIRKS) ? bodyHeight : bodyHeight - PANEL_BODY_PADDING;
			YAHOO.util.Dom.setStyle(panel1.body, 'height', bodyContentHeight + 'px');
		
        resize.on('resize', function(args) {
            var panelHeight = args.height;
			var headerHeight = this.header.offsetHeight; // Content + Padding + Border
			var bodyHeight = (panelHeight - headerHeight);
			var bodyContentHeight = (IE_QUIRKS) ? bodyHeight : bodyHeight - PANEL_BODY_PADDING;

			YAHOO.util.Dom.setStyle(this.body, 'height', bodyContentHeight + 'px');

			if (IE_SYNC) {

				// Keep the underlay and iframe size in sync.

				// You could also set the width property, to achieve the 
				// same results, if you wanted to keep the panel's internal
				// width property in sync with the DOM width. 

				this.sizeUnderlay();

				// Syncing the iframe can be expensive. Disable iframe if you
				// don't need it.

				this.syncIframe();
			}

            layout.set('height', bodyContentHeight);
            layout.set('width', (args.width));
            layout.resize();
            
        }, panel1, true);
}

function setPanelBodyAsIFrame(page){
	panel1.setBody("<div id=\"layout\" height=\"250px\"><iframe src=\""+page+"\" frameborder=\"0\" width=\"100%\" height=\"100%\"/></div>");
	panel1.center();
}

function closePanel(){
	panel1.hide();	
}

function reloadFeedbackFrame() {
	if(document.getElementById("feedbackFrame")){
		try{
			document.getElementById("feedbackFrame").src=document.getElementById("feedbackFrame").src;
		}catch (e){
			//alert('error is ' + e);
		}
	}
}

function reloadAddFeedbackFrame() {
	if(document.getElementById("addFeedbackFrame")){
		try{
			document.getElementById("addFeedbackFrame").src=document.getElementById("addFeedbackFrame").src;
		}catch (e){
			//alert('error is ' + e);
		}
	}
}
