var http_Request = false;
var success = false;
var objectid = "";

// Copyright (C) krikkit - krikkit@gmx.net
// --> http://www.krikkit.net/
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.

function copy_clip(meintext)
{
 if (window.clipboardData)
   {

   // the IE-manier
   window.clipboardData.setData("Text", meintext);

   // waarschijnlijk niet de beste manier om Moz/NS te detecteren;
   // het is mij echter onbekend vanaf welke versie dit precies werkt:
   }
   else if (window.netscape)
   {

   // dit is belangrijk maar staat nergens duidelijk vermeld:
   // you have to sign the code to enable this, or see notes below
   netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');

   // maak een interface naar het clipboard
   var clip = Components.classes['@mozilla.org/widget/clipboard;1']
                 .createInstance(Components.interfaces.nsIClipboard);
   if (!clip) return;

   // maak een transferable
   var trans = Components.classes['@mozilla.org/widget/transferable;1']
                  .createInstance(Components.interfaces.nsITransferable);
   if (!trans) return;

   // specificeer wat voor soort data we op willen halen; text in dit geval
   trans.addDataFlavor('text/unicode');

   // om de data uit de transferable te halen hebben we 2 nieuwe objecten
   // nodig om het in op te slaan
   var str = new Object();
   var len = new Object();

   var str = Components.classes["@mozilla.org/supports-string;1"]
                .createInstance(Components.interfaces.nsISupportsString);

   var copytext=meintext;

   str.data=copytext;

   trans.setTransferData("text/unicode",str,copytext.length*2);

   var clipid=Components.interfaces.nsIClipboard;

   if (!clip) return false;

   clip.setData(trans,null,clipid.kGlobalClipboard);

   }
   alert("Following info was copied to your clipboard:\n\n" + meintext);
   return false;
}

function getAjaxObj()
{
	var xmlHttp;
	
	try
	{
    		// Firefox, Opera 8.0+, Safari
    		xmlHttp=new XMLHttpRequest();
    	}
  	catch (e)
    	{
    		// Internet Explorer
    		try
      		{
      			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
      		}
    		catch (e)
      		{
      			try
        		{
        			xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
        		}
      			catch (e)
        		{
				return false;
        		}
      		}
    	}

	return xmlHttp;
}

function alertContents()
{
	if (http_Request.readyState == 4) {
		if (http_Request.status == 200) {
			
			result = http_Request.responseXML;
			message = result.getElementsByTagName('message')[0];

			error = result.getElementsByTagName('error')[0];
			if (error.textContent == '0') {
				success = true;
			}

			if (success == true)
			{
				document.getElementById('ajaxmessages_' + objectid).innerHTML = '<a href="">' + message.textContent + '</a>'; 
				document.getElementById('ajaxmessages_post_' + objectid).innerHTML = '&nbsp;';
			}
			else
			{
				document.getElementById('ajaxmessages_' + objectid).innerHTML = message.textContent; 
			}
		} else {
			alert('There was a problem with the request.');
		}
	}
}

function sendcomment(url, formid, oid)
{
	var parameters;
	objectid = oid;

	http_Request = getAjaxObj();

	if (http_Request==false)
	{
		return false;
	}

	// Construct parameters
	frm = document.getElementById(formid);

	parameters = "";
	for(var i = 0;i < frm.elements.length;i++) 
	{ 
		element = frm.elements[i]; 

		parameters = parameters + element.name +"=" + encodeURI( element.value ) + "&";
	}
	parameters = parameters + "returnformat=xml";

	frm.new_comment.disabled=true;

	// Post result
        //http_Request.overrideMimeType('text/html');
        http_Request.onreadystatechange = alertContents;
	http_Request.open('POST', url, true);
	http_Request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	http_Request.setRequestHeader("Content-length", parameters.length);
	http_Request.setRequestHeader("Connection", "close");
	http_Request.send(parameters);

	frm.new_comment.disabled=false;

	if (success==true) { 
		frm.new_comment.value=""; 
	}
}