// File: copy-code.js
// Requires: prototype.js, scriptaculous.js?load=effects

	function copyToClipboard(elt) {
		var urlSwf = "/swf/cb.swf";
		var strMssgBoxId = "notifyTextCopied";
		var eltNotify = null;

		// Display Notifications
		if((eltNotify = $(strMssgBoxId)) == null){
			// Attach the notification to the DOM
			var eltBody = document.getElementsByTagName('body').item(0);

			eltNotify = document.createElement('div');
			eltNotify.setAttribute('id', strMssgBoxId);
			eltNotify.style.display = 'none';

			eltNotify.innerHTML = 'Copied';

			eltBody.appendChild(eltNotify);
		}
		elt.onblur =
			function(e){
				Element.hide(eltNotify);
				return true;
			}

		var z = Position.cumulativeOffset(elt);
		var x = z[0];
		var y = z[1];

                Element.show(eltNotify);

                if(navigator.appName == 'Microsoft Internet Explorer'){
                        if(x < 100){
                                eltNotify.style.left = (x + (elt.offsetWidth - 23)) + 'px';
                        }
                        else{
                                eltNotify.style.left = (x - (eltNotify.offsetWidth + 2)) + 'px';
                        }
                }
                else{
                        if(x < 100){
                                eltNotify.style.left = (x + (elt.offsetWidth + 3)) + 'px';
                        }
                        else{
                                eltNotify.style.left = (x - (eltNotify.offsetWidth + 2)) + 'px';
                        }
                }

                eltNotify.style.top = y + 'px';

                var xEffect = Effect.Fade(eltNotify, { fps: 75, from: 1.9, to: 0.0, duration: 2.5, queue: 'front' } );
                window.status = 'Copied text to clipboard';

		// Copy the text inside the text box to the user's clipboard
		var flashcopier = 'flashcopier';
		if(!$(flashcopier)){
			var divholder = document.createElement('div');
			divholder.id = flashcopier;

			document.body.appendChild(divholder);
		}

		$(flashcopier).innerHTML = '';
		var divinfo = '<embed src="' + urlSwf + '" name="copy_swf" FlashVars="clipboard='+escape(elt.value)+'" width="0" height="0" type="application/x-shockwave-flash"></embed>';
		$(flashcopier).innerHTML = divinfo;

		elt.select();

		return true;
	}

