/**
* @author Falchenko Maxim aka be3
* @desc Adds a link to the copied text
* @version 1.1
* @example
* $("#content").addtocopy();
* @license free
**/
jQuery.fn.addtocopy = function(usercopytxt) {
    var options = {htmlcopytxt: '<br>More: <a href="'+window.location.href+'">'+window.location.href+'</a>', minlen: 25}
    $.extend(options, usercopytxt);
	var copy_sp = document.createElement('span');
	copy_sp.id = 'ctrlcopy';
	copy_sp.innerHTML = options.htmlcopytxt;
	return this.each(function(){
		$(this).mousedown(function(){$('#ctrlcopy').remove();});
		$(this).mouseup(function(){
			if(window.getSelection){	//good times 
				slcted=window.getSelection();
				seltxt=slcted.toString();
				if(!seltxt||seltxt.length<options.minlen) return;
				nslct = slcted.getRangeAt(0);
				seltxt = nslct.cloneRange();
				seltxt.collapse(false);
				seltxt.insertNode(copy_sp);
				nslct.setEndAfter(copy_sp);
				slcted.removeAllRanges();
				slcted.addRange(nslct);
			} else if(document.selection){	//bad times
				slcted = document.selection;
				nslct=slcted.createRange();
				seltxt=nslct.text;
				if (!seltxt||seltxt.length<options.minlen) return;
				seltxt=nslct.duplicate();
				seltxt.collapse(false);
				seltxt.pasteHTML(copy_sp.outerHTML);
				nslct.setEndPoint("EndToEnd",seltxt);
				nslct.select();
			}
		});
  });
}
