 function o (id) {
  if (document.getElementById) {
    obj=document.getElementById(id);
  } else if (document.layers) {
    obj=document.layers[id];
  } else if (document.all) {
    obj=document.all[id];
  } else {
    obj=false;
  }

  return obj;
 }
 
 function o_style (name) {
  if (document.getElementById) {
   obj=document.getElementById(name).style;
  } else if (document.layers) {
   obj=document.layers[name];
  } else if (document.all) {
   obj=document.all[name].style;
  } else {
   obj=false;
  }

  return obj;
 }   
     
 function o_hide (name) {
  if (document.getElementById) {
   obj = document.getElementById(name).style.visibility = "hidden";
  } else if (document.layers) {
   obj = document.layers[name].visibility = "hide";
  } else if (document.all) {
   obj = document.all[name].style.visibility = "hidden";
  } else {
   obj=false;
  }
 }

 function o_show (name) {
  if (document.getElementById) {
   obj = document.getElementById(name).style.visibility = "visible";
  } else if (document.layers) {
   obj = document.layers[name].visibility = "show";
  } else if (document.all) {
   obj = document.all[name].style.visibility = "visible";
  } else {
   obj=false;
  }
 }
 
 function setCookie (cookieName, cookieValue, expires, path, domain, secure) {
  path = '/';
  document.cookie = escape(cookieName) + '=' + escape(cookieValue)
                    + (expires ? '; expires=' + expires.toGMTString() : '')
                    + (path ? '; path=' + path : '')
                    + (domain ? '; domain=' + domain : '')
                    + (secure ? '; secure' : '');
 }

 function getCookie (cookieName) {
  var cookieValue = '';
  var posName = document.cookie.indexOf(escape(cookieName) + '=');
  if (posName != -1) {
   var posValue = posName + (escape(cookieName) + '=').length;
   var endPos = document.cookie.indexOf(';', posValue);
   if (endPos != -1) cookieValue = unescape(document.cookie.substring(posValue, endPos));
   else cookieValue = unescape(document.cookie.substring(posValue));
  }
  return (cookieValue);
 }
 
 function setSort (key) {
  setCookie('sortKey',key);
 }
 
 function setOrd (key) {
  setCookie('sortOrd',key);
 } 
 
 function setCount (cnt) {
  setCookie('sortCount',cnt);
 }  
 
 function setUrl (url) {
  setCookie('backUrl',url);         
 }
 
 function addClip (id) {
  var currVal = getCookie('clipped');
  var newVal = (currVal.indexOf('.'+id+'.') == -1) ? currVal+'.'+id+'.' : currVal;
  while(newVal.indexOf('..') != -1) newVal = newVal.replace("..",".");      
  if (newVal.length > 225) newVal = newVal.substr(225);
  setCookie('clipped',newVal);
 }
 
 function setClip (txt) {
  if (window.clipboardData) {
   window.clipboardData.setData('Text',txt);
   return true;
  } else if (window.netscape) {
   // Tak, tak... to jest kawalek dzieki ktoremu kopiowanie do schowka dziala pod Firefoxem (:
   netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
   var str = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);
   if (!str) return false;
   str.data = txt;
   var trans = Components.classes["@mozilla.org/widget/transferable;1"].createInstance(Components.interfaces.nsITransferable);
   if (!trans) return false;
   trans.addDataFlavor("text/unicode");
   trans.setTransferData("text/unicode",str,txt.length*2);
   var clipid = Components.interfaces.nsIClipboard;
   var clip = Components.classes["@mozilla.org/widget/clipboard;1"].getService(clipid);
   if (!clip) return false;
   clip.setData(trans,null,clipid.kGlobalClipboard);
   setCookie('ffClip',1);
   return true;
  }
 } 
 
 function clipIt (id) {
  var obj = o('o'+id);
  var txt = obj.innerHTML;
  while(txt.indexOf('&lt;') != -1) txt = txt.replace("&lt;","<");
  while(txt.indexOf('&gt;') != -1) txt = txt.replace("&gt;",">");
  while(txt.indexOf('&nbsp;') != -1) txt = txt.replace("&nbsp;"," ");
  while(txt.indexOf('<br />') != -1) txt = txt.replace("<br />","\n");
  while(txt.indexOf('<br>') != -1) txt = txt.replace("<br>","\n");
  while(txt.indexOf('<BR>') != -1) txt = txt.replace("<BR>","\n");
  if (setClip(txt)) {
   window.status='Opis został skopiowany do schowka';
   obj.style.color = '#999';
   obj.title = 'Ten opis został już skopiowany';
   addClip(id);
  }
 } 
 
 function setDefaultEffect (effect) {
  var cEff = getCookie('effect');
  if (cEff == effect) setCookie('effect','x');
  else setCookie('effect',effect);       
  
  if (cEff == effect) o('eImg').src = '/i/default_disabled.gif';
  else o('eImg').src = '/i/default.gif';
 }
 
 var votes = new Array();
 
 function checkVotes () {
  var cv, pv, ppv = 0;
  
  for (var i=votes.length;i>=0;i--) {
   cv = votes[i-1];
   pv = (typeof(votes[i-2]) == 'number') ? votes[i-2] : 0;
   ppv = (typeof(votes[i-3]) == 'number') ? votes[i-3] : 0;  
   
   if (cv <= pv && cv <= ppv) {
    return confirm('Potwierdzasz oddanie kolejnego głosu?');
   }
  }
  
  return true;
 }
 
 function doVote (typ,id,glos) {
  if (glos <= 2) {
   votes[votes.length] = glos;
   if (!checkVotes()) return;
  }
  o('v'+id).innerHTML = '<img src="/i/stars.gif" class="stars" alt="Czekaj..." title="Czekaj..." />';
  var url = 'glos.html?typ='+typ+'&id='+id+'&glos='+glos;
  ajaxGet(url,'v'+id);
 }
 
 function doFullVote (typ,id,glos) {
  o('v'+id).innerHTML = '<img src="/i/stars.gif" class="stars" alt="Czekaj..." title="Czekaj..." />';
  var url = 'glos.html?typ='+typ+'&id='+id+'&glos='+glos+'&full=1';
  ajaxGet(url,'ajaxOutput');
 } 
 
 function checkResult (response) {
  if (response == undefined) return false;
  return (response.indexOf('OK') != -1);
 }
 
 function doAccept (id) {
  var url = 'akceptuj.html?id='+id;
  ajaxGet(url,'n'+id);     
 }
 
 function doReject (id) {
  var url = 'odrzuc.html?id='+id;
  ajaxGet(url,'n'+id);
 }
 
 function doResort (kat,count,sort,ord) {
  var url = 'sortuj.html?kat='+kat+'&ajaxCount='+count+'&ajaxSort='+sort+'&ajaxOrd='+ord;
  ajaxGet(url,'sort');
 } 
 
 function showCode (imw,imh) {
  var html = '<a href="http://statusy.org/" target="_blank"><img src="http://statusy.org/promo/'+imw+'x'+imh+'.gif" style="width:'+imw+'px;height:'+imh+'px;border:0 none;" alt="statusy.org - rozwal znajomych opisem!" title="statusy.org - rozwal znajomych opisem!" /></a>';
  while(html.indexOf('<') != -1) html = html.replace("<","&lt;");
  while(html.indexOf('>') != -1) html = html.replace(">","&gt;");
  o('promoCode').innerHTML = html;
 }
 
 function copyCode (obj) {
  var txt = obj.innerHTML;
  if (txt.indexOf('ybierz') != -1) {
   alert('Wybierz kreację');
   return;
  }
  
  while(txt.indexOf('&lt;') != -1) txt = txt.replace("&lt;","<");
  while(txt.indexOf('&gt;') != -1) txt = txt.replace("&gt;",">");
  
  if (setClip(txt)) window.status='Kod został skopiowany do schowka';
 }  