/* ******************************************************************************************************************************* */
function cval(i)
{

	if (isNaN(i))
		{
		
			i=i.toString();
			i=i.replace('px','');

			return i*1;
			
		}
		else
		{
		 return i;
		}
}


/***************************************************************************************/
// Change DIV Opacity all browser

function savedraft()
{
	alert("Save Draft");
}

function opacity(id, opacStart, opacEnd, millisec) {
    //speed for each frame
    
    
    var speed = Math.round(millisec / 100);
   
    var timer = 0;

    //determine the direction for the blending, if start and end are the same nothing happens
    if(opacStart > opacEnd) {
        for(i = opacStart; i >= opacEnd; i--) {
           
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    } else if(opacStart < opacEnd) {
        for(i = opacStart; i <= opacEnd; i++)
            {
//             alert((timer * speed));
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    }
}

//change the opacity for different browsers
function changeOpac(opacity, id) {

   var object = document.getElementById(id).style;

     object.opacity = (opacity / 100);
     object.MozOpacity = (opacity / 100);
     object.KhtmlOpacity = (opacity / 100);

     object.filter = "alpha(opacity=" + opacity + ");";
     if (opacity >=100) object.filter="";
  
}


/*********************************************************************************************************************************/



var Url = {

	// public method for url encoding
	encode : function (string) {
		return escape(this._utf8_encode(string));
	},

	// public method for url decoding
	decode : function (string) {
		return this._utf8_decode(unescape(string));
	},

	// private method for UTF-8 encoding
	_utf8_encode : function (string) {
		string = string.replace(/\r\n/g,"\n");
		var utftext = "";

		for (var n = 0; n < string.length; n++) {

			var c = string.charCodeAt(n);

			if (c < 128) {
				utftext += String.fromCharCode(c);
			}
			else if((c > 127) && (c < 2048)) {
				utftext += String.fromCharCode((c >> 6) | 192);
				utftext += String.fromCharCode((c & 63) | 128);
			}
			else {
				utftext += String.fromCharCode((c >> 12) | 224);
				utftext += String.fromCharCode(((c >> 6) & 63) | 128);
				utftext += String.fromCharCode((c & 63) | 128);
			}

		}

		return utftext;
	},

	// private method for UTF-8 decoding
	_utf8_decode : function (utftext) {
		var string = "";
		var i = 0;
		var c = c1 = c2 = 0;

		while ( i < utftext.length ) {

			c = utftext.charCodeAt(i);

			if (c < 128) {
				string += String.fromCharCode(c);
				i++;
			}
			else if((c > 191) && (c < 224)) {
				c2 = utftext.charCodeAt(i+1);
				string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));
				i += 2;
			}
			else {
				c2 = utftext.charCodeAt(i+1);
				c3 = utftext.charCodeAt(i+2);
				string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
				i += 3;
			}

		}

		return string;
	}

}

/*********************************************************************************************************************************/

function gettag(st,tag)
{

	var tagin;
	var tagout;
	var zin;
	var zout;
	
	
	tagin="<"+tag+">";
	tagout="</"+tag+">";

	
	zin=st.search(tagin.toUpperCase());
	if (zin==-1) zin=st.search(tagin.toLowerCase());
	
	zout=st.search(tagout.toUpperCase());
	if (zout==-1) zout=st.search(tagout.toLowerCase());
	

	if ((zin!=-1) &&(zout!=-1))
		{
			st=st.substring(zin+tagin.length,zout);

			return st;
		}
}

/*********************************************************************************************************************************/
function getAbsoluteLeft(objectId) {
	// Get an object left position from the upper left viewport corner
	// Tested with relative and nested objects
	//o = document.getElementById(objectId)
	o=objectId;
	oLeft = o.offsetLeft            // Get left position from the parent object
	while(o.offsetParent!=null) {   // Parse the parent hierarchy up to the document element
		oParent = o.offsetParent    // Get parent object reference
		oLeft += oParent.offsetLeft // Add parent left position
		o = oParent
	}
	// Return left postion
	oLeft=oLeft*1
	return oLeft
}


function getAbsoluteTop(objectId) {
	// Get an object top position from the upper left viewport corner
	// Tested with relative and nested objects
	//o = document.getElementById(objectId)
	o=objectId
	oTop = o.offsetTop            // Get top position from the parent object
	while(o.offsetParent!=null) { // Parse the parent hierarchy up to the document element
		oParent = o.offsetParent  // Get parent object reference
		oTop += oParent.offsetTop // Add parent top position
		o = oParent
	}
	// Return top position
	oTop=oTop*1
	return oTop
}


/*********************************************************************************************************************************/

function postform(frmname)
{


	var x;
	var i;
	var part;
	var args;
	args="";
	if (document.getElementById(frmname)!=null)
	{
		x=	document.getElementById(frmname)

		var x=document.getElementById(frmname);
		for (var i=0;i<x.length;i++)
		  {
		

				part=""
				
				tag_type=x.elements[i].tagName;
				//vl=urlencode(x.elements[i].value);
				if (x.elements[i].value) 
				{
				v=Url.encode((x.elements[i].value))

				if (tag_type=="INPUT" || tag_type=="input")
					{
				
						
						if (x.elements[i].type=="" || x.elements[i].type=="text") part=x.elements[i].name + "=" +(v) + "&";
						
						if (x.elements[i].type=="" || x.elements[i].type=="text") part=x.elements[i].name + "=" +(v) + "&";
						
						if (x.elements[i].type=="checkbox")
							{
								if (x.elements[i].checked==true)
									{
										part=x.elements[i].name + "=" +v + "&";
									}
							}
							
						if (x.elements[i].type=="hidden")
							{
								part=x.elements[i].name + "=" +(v) + "&";
							}							
							
						if (x.elements[i].type=="password")
							{
								part=x.elements[i].name + "=" +(v) + "&";
							}	
							
						if (x.elements[i].type=="radio")
							{
								if (x.elements[i].checked==true)
									{
										part=x.elements[i].name + "=" +v + "&";
									}
							}
	
					}
				
				if (tag_type=="TEXTAREA" || tag_type=="textarea")
					{
						
						if (x.elements[i].name=="html")
							{
							//var fckVal = FCKeditorAPI.GetInstance('html').GetHTML(); 
							//
							// Get the editor instance that we want to interact with.
							//var oEditor = null;
							//var oEditor = CKEDITOR.instances.html;
						
							// Get the editor contents
							DestroyEditor();
							fckVal  = document.getElementById("html").value;
							
							//fckVal = oEditor.getData() ;
							
						
							
							
							v=Url.encode( fckVal )
							part=x.elements[i].name + "=" +(v) + "&";
							}
							else
							{
							 part=x.elements[i].name + "=" +(v) + "&";
							 }
					}
	
				if (tag_type=="SELECT" || tag_type=="select")
					{

						xv=x.elements[i].value	
						//xv=x.elements[i].options(x.elements[i].selectedIndex).value;						
						if (xv=="") xv=x.elements[i].options(x.elements[i].selectedIndex).text;
						part=x.elements[i].name + "=" +xv + "&";
					}
					
	
				
				
				if (part!="")
					args=args+part;				
				}
	
			}
			
			
		    
			action=document.getElementById(frmname).action

			document.getElementById("cmswindowcaption").innerHTML="Loading ... "
			xfrmname=frmname;
			w=document.getElementById("cmspagediv")
			w.innerHTML="<p align=center><img src='cms//images//loadingani.gif'></p>"	
						
			xargs=args
			
			
			window.setTimeout('gethtmlpostx(action,xargs)',10);
			





	
	}
	else
	{
		alert("Error sending form data , form '"+frmname+"' not present.")
		hideall()
	}

}

function postformDraft(frmname)
{


	var x;
	var i;
	var part;
	var args;
	args="";
	if (document.getElementById(frmname)!=null)
	{
		x=	document.getElementById(frmname)

		var x=document.getElementById(frmname);
		for (var i=0;i<x.length;i++)
		  {
		

				part=""
				
				tag_type=x.elements[i].tagName;
				//vl=urlencode(x.elements[i].value);
				if (x.elements[i].value) 
				{
				v=Url.encode((x.elements[i].value))

				if (tag_type=="INPUT" || tag_type=="input")
					{
				
						
						if (x.elements[i].type=="" || x.elements[i].type=="text") part=x.elements[i].name + "=" +(v) + "&";
						
						if (x.elements[i].type=="" || x.elements[i].type=="text") part=x.elements[i].name + "=" +(v) + "&";
						
						if (x.elements[i].type=="checkbox")
							{
								if (x.elements[i].checked==true)
									{
										part=x.elements[i].name + "=" +v + "&";
									}
							}
							
						if (x.elements[i].type=="hidden")
							{
								part=x.elements[i].name + "=" +(v) + "&";
							}							
							
						if (x.elements[i].type=="password")
							{
								part=x.elements[i].name + "=" +(v) + "&";
							}	
							
						if (x.elements[i].type=="radio")
							{
								if (x.elements[i].checked==true)
									{
										part=x.elements[i].name + "=" +v + "&";
									}
							}
	
					}
				
				if (tag_type=="TEXTAREA" || tag_type=="textarea")
					{
						
						if (x.elements[i].name=="html")
							{
							//var fckVal = FCKeditorAPI.GetInstance('html').GetHTML(); 
							//
							// Get the editor instance that we want to interact with.
							//var oEditor = null;
							//
						
							// Get the editor contents
							//DestroyEditor();
							var oEditor = CKEDITOR.instances.html;
							
							fckVal = oEditor.getData() ;
						
							
							
							//
							
						
							
							
							v=Url.encode( fckVal )
							part=x.elements[i].name + "=" +(v) + "&";
							}
							else
							{
							 part=x.elements[i].name + "=" +(v) + "&";
							 }
					}
	
				if (tag_type=="SELECT" || tag_type=="select")
					{

						xv=x.elements[i].value	
						//xv=x.elements[i].options(x.elements[i].selectedIndex).value;						
						if (xv=="") xv=x.elements[i].options(x.elements[i].selectedIndex).text;
						part=x.elements[i].name + "=" +xv + "&";
					}
					
	
				
				
				if (part!="")
					args=args+part;				
				}
	
			}
			
			
		    
			action=document.getElementById(frmname).action
/*
			document.getElementById("cmswindowcaption").innerHTML="Loading ... "
			xfrmname=frmname;
			w=document.getElementById("cmspagediv")
			w.innerHTML="<p align=center><img src='cms//images//loadingani.gif'></p>"	
						*/
			document.getElementById("cmsmsgs").innerHTML="Saving Document ...";
			document.getElementById("cmsmsgs").style.display="block";
			document.getElementById("cmsmsgs").style.zIndex=gettopzindex();
			args=args+"xsavemodex=draft&";
		
			xargs=args;
			window.setTimeout('gethtmlpostx2(action,xargs)',10);
			





	
	}
	else
	{
		alert("Error sending form data , form '"+frmname+"' not present.")
		hideall()
	}

}


/*********************************************************************************************************************************/
function gethtmlpostx(url,args)
{
		
			CancelRefresh=false;
			
			xml=gethtmlpost(url,args)
				
			if (gettag(xml,"error")=="ERROR")
			{
				document.getElementById("cmswindowcaption").innerHTML="Error loading '"+url+"'"
				//w.innerHTML="Error";
				
				w.innerHTML=xml;
			}
			else
			{
				w=document.getElementById("cmspagediv")
				w.style.overflow="auto";
							
				document.getElementById("cmswindowcaption").innerHTML=gettag(xml,"title")
				w.innerHTML=xml;
				
				sc=gettag(xml,"script")

				if (sc!="") eval(sc)
				
			}

}
function gethtmlpostx2(url,args)
{
						CancelRefresh=false;
			
			xml=gethtmlpost(url,args)
			
			document.getElementById("cmsmsgs").innerHTML="Document Saved";
			
			window.setTimeout("hidecmsmsg()",2000);
			sc=gettag(xml,"script");
			
			if (sc!="") eval(sc)

}

function hidecmsmsg()
{
			document.getElementById("cmsmsgs").style.display="none";

}

function gethtmlpost(url,postdata)
{

var xmlhttp;
xmlhttp=null;


last_xml="";


// code for Mozilla, etc.
if (window.XMLHttpRequest)
  {
  xmlhttp=new XMLHttpRequest()
  }
// code for IE
else if (window.ActiveXObject)
  {
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")
  }
if (xmlhttp!=null)
  {
  	  
  	  
  	  
	  xmlhttp.open("POST",url,false)
	  xmlhttp.setRequestHeader ("Content-Type", "application/x-www-form-urlencoded");
	  xmlhttp.send(postdata)

	  if (xmlhttp.status==200)
	  	{

	  	  xhtm = xmlhttp.responseText;
		  return xhtm;
	    }
	    else
	    {
	    
	    	xhtm ="<error>ERROR</error><br>"
	    	xhtm = xhtm + xmlhttp.responseText;

	      return xhtm;
	    }
  }
}

/*********************************************************************************************************************************/
function getxml(url)
{

var xmlhttp;
xmlhttp=null;


// code for Mozilla, etc.
if (window.XMLHttpRequest)
  {
  xmlhttp=new XMLHttpRequest()
  }
// code for IE
else if (window.ActiveXObject)
  {
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")
  }
if (xmlhttp!=null)
  {
  	  
	  xmlhttp.open("GET",url,false)
	  xmlhttp.send(null)
	  if (xmlhttp.status==200)
	  	{
		 return xmlhttp.responseText;
	    }
	    else
	    {
		return xmlhttp.responseText;
	    }
  }
  
}



function getpage(url)
{
	document.getElementById("cmswindowcaption").innerHTML="Loading ... "
	xurl=url;
	w=document.getElementById("cmspagediv")
	w.innerHTML="<p align=center><img src='cms//images//loadingani.gif'></p>"	
	
	window.setTimeout('getpage2(xurl)',500);
}
function getpage2(url)
{

	w=document.getElementById("cmspagediv")
	w.style.overflow="auto";
	xml=getxml(url)
	
	document.getElementById("cmswindowcaption").innerHTML=gettag(xml,"title")
	w.innerHTML=xml;

	sc=gettag(xml,"script")
	if (sc!="") eval(sc)


}
function movewindow(obj)
{
	if (window.event.button==1)
		{
			if ((fx+window.event.x-lx>0) && (fx+window.event.x-lx<window.document.body.clientWidth-300) )
				{
					obj.style.left=fx+window.event.x-lx;
				}
			if ((fy+window.event.y-ly>0) && (fy+window.event.y-ly<window.document.body.clientHeight-150) )
				{
					obj.style.top=fy+window.event.y-ly;
				}

		}
		else
		{
			lx=window.event.x;
			ly=window.event.y;
			fx=obj.style.posLeft;
			fy=obj.style.posTop;
		}

}

