/*<![CDATA[*/
/* SnipURL util functions */

function addEvent(obj, type, fn) { if (obj.addEventListener) { obj.addEventListener(type, fn, false); } else if (obj.attachEvent) { obj["e"+type+fn] = fn; obj[type+fn] = function() { obj["e"+type+fn](window.event); }; obj.attachEvent("on"+type, obj[type+fn]); }}
function getElementsByClass(node, tag, searchClass) { var classElements = new Array(); if ( node == null ){ node = document; } if ( tag == null ) {tag = '*'; }var els = node.getElementsByTagName(tag);var elsLen = els.length;var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");for (i = 0, j = 0; i < elsLen; i++) {if ( pattern.test(els[i].className) ) {classElements[j] = els[i];j++;}}return classElements;}
function getElementsByTagNames(list,obj) {if (!obj) { var obj = document; } var tagNames = list.split(',');var resultArray = new Array();for (var i=0;i<tagNames.length;i++) {var tags = obj.getElementsByTagName(tagNames[i]);for (var j=0;j<tags.length;j++) { resultArray.push(tags[j]);}} var testNode = resultArray[0]; if (testNode.sourceIndex) { resultArray.sort(function (a,b) {return a.sourceIndex - b.sourceIndex;});} else if (testNode.compareDocumentPosition) {resultArray.sort(function (a,b) {return 3 - (a.compareDocumentPosition(b) & 6);});}return resultArray;}
function addClass(target, classValue) { var pattern = new RegExp("(^| )" + classValue + "( |$)"); if (!pattern.test(target.className)) { if (target.className == "") { target.className = classValue; } else { target.className += " " + classValue; } } return true;}
function removeClass(target, classValue) { var removedClass = target.className; var pattern = new RegExp("(^| )" + classValue + "( |$)"); removedClass = removedClass.replace(pattern, "$1"); removedClass = removedClass.replace(/ $/, ""); target.className = removedClass; return true;}var dbl_ord = Math.random() * 10000000000000000;
function hidehelp(lyr) {var l = document.getElementById(lyr);l.style.top = '-2000px';}
function setLyr(obj, lyr, txt) { var coors = findPos(obj); var x = document.getElementById(lyr); x.style.left = (coors[0] - 140) + 'px'; x.style.top = coors[1] + 18 + 'px'; x.innerHTML=txt;}
function findPos(obj) { var curleft = curtop = 0;if (obj.offsetParent) { curleft = obj.offsetLeft; curtop = obj.offsetTop; while (obj = obj.offsetParent) { curleft += obj.offsetLeft; curtop += obj.offsetTop; } } return [curleft,curtop];}
function posLogin(el) { var e=document.getElementById(el); var coors= findPos(e); var em=document.getElementById('loginform'); em.style.left = (coors[0]-500)+"px"; em.style.top = "30px"; toggleLayer('loginform'); document.loginf.u.focus(); }
function cSnPre(f) { f = unescape(decodeURIComponent(f)); var bP = typeof f == "undefined";if (window.clipboardData) {if (!bP) {window.clipboardData.setData("Text", f);return;}return window.clipboardData.getData("Text");} else {FT = "text/unicode";CI = Components.interfaces;Cb = CI.nsIClipboard;C = Components;Cs = CI.nsISupportsString;Cm = "@mozilla.org";Cmw = Cm + "/widget/clipboard;1";try {netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");e = C.classes[Cmw].createInstance(Cb);var clip = C.classes[Cmw].getService(Cb);} catch (e2) {return;}try {b = C.classes[Cm + "/widget/transferable;1"].createInstance(CI.nsITransferable);} catch (e3) {return;}b.addDataFlavor(FT);if (typeof f == "undefined") {clip.getData(b, clip.kGlobalClipboard);var str = {};var strLength = {};b.getTransferData(FT, str, strLength);if (str) {str = str.value.QueryInterface(Cs);}if (str) {f = str.data.substring(0, strLength.value / 2);}return f;}o = C.classes[Cm + "/supports-string;1"].createInstance(Cs);o.data = f;b.setTransferData(FT, o, f.length * 2);try {t = CI.nsIClipboard;} catch (e4) {return;}e.setData(b, null, t.kGlobalClipboard);return;}return;}
function cSn(sn, el) { cSnPre(sn); sn = unescape(decodeURIComponent(sn)); if (window.clipboardData) { window.clipboardData.setData("Text",sn); } else { var flashcopier = 'flashcopier'; if(!document.getElementById(flashcopier)) { var divholder = document.createElement('div'); divholder.id = flashcopier; document.body.appendChild(divholder); } document.getElementById(flashcopier).innerHTML = ''; var divinfo = '<embed src="/site/snippetty.swf" FlashVars="clipboard='+escape(sn)+'" width="0" height="0" type="application/x-shockwave-flash"></embed>'; document.getElementById(flashcopier).innerHTML = divinfo; } var e=document.getElementById(el); var coors= findPos(e); var em=document.getElementById('blip'); em.style.left = coors[0]+"px"; em.style.top = (coors[1]+25)+"px"; em.style.display=""; setTimeout('hB()', 1000);}
function hB() { var em=document.getElementById('blip');em.style.display="none";  }
function toggleLayer(elementId) { var element = document.getElementById(elementId); if(element.style.display == '') { element.style.display = 'none'; } else { element.style.display = ''; } }
function delSnip(h, t) { var c=confirm(t); if (c) { location.href=h; } } var x = 10; var y = 1;
function timeToClose() {if (x > 0) {x = x-y; document.copyForm.clock.value = "Closing in " + x + " seconds...";setTimeout("timeToClose()", 1000);if(x==0){window.close();}}}
function isInvalid(val) { re = new RegExp("[^a-zA-Z0-9_]"); if (re.test(val)) { return true; } else { return false; } }
function setText(obj, txt) { obj.innerHTML = txt; }
function isValidUrl(s) {a = s.match(/\w{2,}\:\/{2}([-\w]+\.)+\w+\S*/g);err = a != null && a.length ? 0 : 11;return a;}
//function checkUrl(u) { if (isValidUrl(u)) { return true; } else { u = 'http://'+u; if (isValidUrl(u)) { return true; }  else { return false; }}}
function initialize() { if (window.clipboardData) { clip = window.clipboardData.getData("Text"); snip = /snipurl\.com|snurl\.com|snipr\.com|sn\.im/; if (isValidUrl(clip) && !snip.test(clip)) { document.snipform.url.value=clip; } } }
function blipMsg(e, text) { var coors= findPos(e); var em=document.getElementById('blip'); em.style.left = coors[0]+"px"; em.style.top = (coors[1]+30)+"px"; var msg = 'Copied <b>' + text + '</b> to clipboard.'; em.innerHTML = msg; em.style.display=""; setTimeout('hB()', 1000); }
function zc_e(client, text) { em = client.domElement; blipMsg(em, text); if (em.getAttribute("do") == "close") { window.close(); }	}


/*]]>*/
