function insertCopyToClipboardButton(wrapper_id) { 
	if (!document.getElementById || !document.getElementById(wrapper_id)) { 
		// Браузер не поддерживает необходимые нам функции return false; 
	} 
	else { 
		wrapper = document.getElementById(wrapper_id); 
	} 
	
	if (wrapper && wrapper.parentNode.insertBefore) { 
		//button = $('but');
		//button2 = $('but2');
		//button = document.createElement("a"); 
		//button.setAttribute("href", "#"); 
		//button.innerHTML = "<span><img src='ico_cb.gif' alt='' style='vertical-align: middle;' /> </span>Скопировать в буфер";
		//button.onclick = function() {
		wrapper.focus();
		wrapper.select();
			result = copyToClipboard(innerText(wrapper)); 
			if (result) {
			    alert('Код скопирован в буфер обмена.');
			}
			else {
			    alert('К сожалению, Ваш браузер не позволяет работать с буфером обмена.');
			}
			
			return false; 
		//} 
		
		/*button2.onclick = function() { 
			result = copyToClipboard(innerText(wrapper)); 
			if (result) {
			    alert('Код скопирован в буфер обмена.');
			}
			else {
			    alert('К сожалению, Ваш браузер не позволяет работать с буфером обмена.');
			}
			
			return false; 
		} */
		
		// emulate insertAfter: 
		//wrapper.parentNode.insertBefore(button, wrapper.nextSibling); 
	} 
	else { 
		return false 
	} 
}


function innerText(node) { 
	// @author Dethe Elza 
	// @article "XML Matters: Beyond the DOM. Tips and tricks for a friendlier DOM" 
	// @url http://www-128.ibm.com/developerworks/xml/library/x-matters41.html
	if (node.nodeName == 'INPUT' || node.nodeName == 'TEXTAREA') return node.value;
	if (node.nodeType == 3 || node.nodeType == 4) { 
		return node.data; 
	} 
	
	var i; 
	var returnValue = []; 
	for (i = 0; i < node.childNodes.length; i++) { 
		returnValue.push(innerText(node.childNodes[i])); 
	} 
	alert(returnValue);
	return returnValue.join(''); 
}


function copyToClipboard(content) {
	if (window.clipboardData && window.clipboardData.setData) {
		window.clipboardData.setData("Text", content);
		return true;
	}
	else {
		try { 
			netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); 
		} 
		catch (e) { 
			return false;
		}
		
		var clipboard = Components.classes["@mozilla.org/widget/clipboard;1"].getService(); 
		if (clipboard) { 
			clipboard = clipboard.QueryInterface(Components.interfaces.nsIClipboard); 
		} 
		
		var transferable = Components.classes["@mozilla.org/widget/transferable;1"].createInstance(); 
		if (transferable) { 
			transferable = transferable.QueryInterface(Components.interfaces.nsITransferable); 
		}

		if (clipboard && transferable)
		{
			// тип передаваемых данных transferable.addDataFlavor("text/unicode");
			var textObj = new Object();
			var textObj = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);
			if (textObj)
			{
				textObj.data = content;
				// Упаковываем данные в контейнер
				transferable.setTransferData("text/unicode", textObj, content.length*2);
				var clipid=Components.interfaces.nsIClipboard;
				clipboard.setData(transferable,null,clipid.kGlobalClipboard);
				return true;
			}
		}
		
		return false;
	}
}
