function unloadJS(scriptName) {
  var head = document.getElementsByTagName('head').item(0);
  var js = document.getElementById(scriptName);
  js.parentNode.removeChild(js);
}

function unloadAllJS() {
  var jsArray = new Array();
  jsArray = document.getElementsByTagName('script');
  for (i = 0; i < jsArray.length; i){
    if (jsArray[i].id){
      unloadJS(jsArray[i].id)
    }else{
      jsArray[i].parentNode.removeChild(jsArray[i]);
    }
  }       
}

function display(num) {  
    var n=num;  
    num=String(num);  
    num=num.replace(/\./,',');  
    var ispoint=(num.match(/,/)?true:false);  
    var i=num.length;  
    var cntr=0;  
    var out='';  
    while(i>=0) {  
        if (num.charAt(i)==',') { ispoint=false; }  
        out=num.charAt(i)+out;  
        if (!ispoint && num.charAt(i).match(/[0-9]/)) {  
          if (cntr==2) { out=' '+out; }  
          if (cntr++>=3) { cntr=1; }  
        }  
        i--;                                          
    }  
    return(out);  
}  

function explode(delimiter, string, limit) {
    var emptyArray = { 0: '' };
    
    // third argument is not required
    if ( arguments.length < 2 ||
        typeof arguments[0] == 'undefined' || typeof arguments[1] == 'undefined' ) {
        return null;
    }
 
    if ( delimiter === '' || delimiter === false ||
        delimiter === null ) {
        return false;
    }
     if ( typeof delimiter == 'function' ||
        typeof delimiter == 'object' ||
        typeof string == 'function' ||
        typeof string == 'object' ) {
        return emptyArray;    }
 
    if ( delimiter === true ) {
        delimiter = '1';
    }    
    if (!limit) {
        return string.toString().split(delimiter.toString());
    } else {
        // support for limit argument        var splitted = string.toString().split(delimiter.toString());
        var partA = splitted.splice(0, limit - 1);
        var partB = splitted.join(delimiter.toString());
        partA.push(partB);
        return partA;    }
}

function implode(glue, pieces) {
    var i = '', retVal='', tGlue='';

    if (arguments.length === 1) {        
      pieces=glue;
      glue='';}

    if (typeof(pieces) === 'object') {
      if (pieces instanceof Array) {            
        return pieces.join(glue);}
       else {
        for (i in pieces) {
          retVal += tGlue + pieces[i];                
          tGlue = glue;
        }
        return retVal;
       }
    } else {
       return pieces;}
}    

function Path() {
  var url=location.href.replace(/\\/g,'/');

  if (url.indexOf('beta') != -1)
    return url.substring(0,url.indexOf('beta')+4);
   else 
    return url.substring(0,url.indexOf('.hu')+3);
}
/*function Path() {
  var url=location.href.replace(/\\/g,'/');
  return url.substring(0,url.lastIndexOf('/'));
}*/

function createjscssfile(filename, filetype) {
 if (filetype=="js") { //if filename is a external JavaScript file
  var fileref=document.createElement('script');
  fileref.setAttribute("type","text/javascript");
  fileref.setAttribute("src", filename);}
 else 
  if (filetype=="css") { //if filename is an external CSS file
    var fileref=document.createElement("link");
    fileref.setAttribute("rel", "stylesheet");
    fileref.setAttribute("type", "text/css");
    fileref.setAttribute("href", filename);}
 
 return fileref;
}

function replacejscssfile(oldfilename, newfilename, filetype) {
 var targetelement=(filetype=="js")? "script" : (filetype=="css")? "link" : "none"; //determine element type to create nodelist using
 var targetattr=(filetype=="js")? "src" : (filetype=="css")? "href" : "none"; //determine corresponding attribute to test for
 var allsuspects=document.getElementsByTagName(targetelement);
 for (var i=allsuspects.length; i>=0; i--) { //search backwards within nodelist for matching elements to remove
  if (allsuspects[i] && allsuspects[i].getAttribute(targetattr)!=null && allsuspects[i].getAttribute(targetattr).indexOf(oldfilename)!=-1) {
   var newelement=createjscssfile(newfilename, filetype);
   allsuspects[i].parentNode.replaceChild(newelement, allsuspects[i]);}
 }
}

function addCss(url, ismedia) {
	var link = document.createElement('link');
	link.setAttribute('href', url);
	link.setAttribute('rel', 'stylesheet');
	link.setAttribute('type', 'text/css');
	if(ismedia) link.setAttribute('media', 'screen');
	var head = document.getElementsByTagName('head').item(0);
	head.appendChild(link);
}

function atvevoket_keresunk(live_site) {
	this.location.href = live_site + "/index.php?option=com_rbids&task=atvevoket_keresunk";
}

function eladokat_keresunk(live_site) {
	this.location.href = live_site + "/index.php?option=com_rbids&task=eladokat_keresunk";
}

function getScroll() {
	var scrOfX = 0;
	var scrOfY = 0;
  if( typeof( window.pageYOffset ) == 'number' ) {
		//Netscape compliant
		scrOfY = window.pageYOffset;
		scrOfX = window.pageXOffset;
	} else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
		//DOM compliant
		scrOfY = document.body.scrollTop;
		scrOfX = document.body.scrollLeft;
	} else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
		//IE6 standards compliant mode
		scrOfY = document.documentElement.scrollTop;
		scrOfX = document.documentElement.scrollLeft;
	}
	return [scrOfX,scrOfY];
}

function findPos(obj) {
	var curleft = curtop = 0;
	
	if (obj.offsetParent) {
  	do {
			curleft += obj.offsetLeft;
			curtop += obj.offsetTop;
		} while (obj = obj.offsetParent);

	  return [curleft,curtop];
  }
}

function get_innerHeight() {
  var de=document.documentElement;
  var innerHeight=window.innerHeight || self.innerHeight || (de&&de.clientHeight) || document.body.clientHeight;
  return innerHeight;
}

function set_ajaxwin_top(box) {  
  if (box != null && box != 'undefined') {
    var pos=findPos(box);
    var scrolled=getScroll();
    box.style.top=(pos[1]*-1)+(scrolled[1]*2)+'px';
  }  
}

function startcounterAJAX() {
  if (document.getElementById('running_setTimeLeft2').value == '0') {
    document.getElementById('running_setTimeLeft2').value='1';
    setTimeLeft2(nrcounters, caller_form2);   
  }
}

//var caller_form - A hívó form azonosító kódja
//                  - csomag_vasarlas, listauctions (árverés lista, myauctions), edituser, myBids: 0
//                  - auctiondetails: 1 

String.prototype.trim = function () {
    return this.replace(/^\s*/, "").replace(/\s*$/, "");
}
String.prototype.copyTo = function (substr) {
    return this.substring(0,this.indexOf(substr)).trim();
}
String.prototype.deleteFrom = function (substr) {
    return this.slice(this.indexOf(substr)+substr.length);
}

function toDoubleDigit(i) {
	var s=new String(i);
	if (s.length==0) s='00'
	else
		if (s.length==1) s='0'+s;
	return s;
}

function setTimeLeft2(maxtimers, forms) {
  if (!maxtimers) 
    maxtimers=100;

	for (i=1;i<=maxtimers;i++) {	  
    el=document.getElementById('ido'+i);
	  if (!el) 
      continue;
		val=el.innerHTML;                               

    if (val==expired2) 
      continue;
		d=0;
		h=0;
		m=0;
		s=0;
    //IE miatt le kell konvertálni kisbetüsre
		val=val.toLowerCase();
		if (val.indexOf(days2)>=0){
			ds=val.copyTo(days2);
			val=val.deleteFrom(days2);
			if(parseInt(ds)!=NaN){
				d=parseInt(ds,10);
			}
		}
	
		if (val.indexOf(':')>=0){
			hs=val.copyTo(':');
			val=val.deleteFrom(':');
			if(parseInt(hs)!=NaN){
				h=parseInt(hs,10);
			}
		}
		if (val.indexOf(':')>=0){
			ms=val.copyTo(':');
			val=val.deleteFrom(':');
			if(parseInt(ms)!=NaN){
				m=parseInt(ms,10);
			}
		}
		if(parseInt(val)!=NaN){
			s=parseInt(val,10);
		}
		timedout=false;
		if (s>0){
			s--;
		}else{
			s=59;
			if(m>0){
				m--;
			}else{
				m=59;
				if(h>0){
					h--;
				}else{
					h=23;
					if(d>0){
						d--;
					}else{
						timedout=true;
					}
				}
			}
		}

		newval='';
		if (!timedout) {
			if (d>0)
				if (task == 'listauctions' || task == 'listHirdetesek')
				  newval=d+'<img src="images/sun20x20.png">';
				 else 
          newval=d+' '+days2+' ';
			newval+=toDoubleDigit(h)+':'+toDoubleDigit(m)+':'+toDoubleDigit(s);
			
      if (forms == 1) {
        if (hosszabitas == 'igen') {
          sec_vissza=d*60*60*24+h*60*60+m*60+s;
          if (hosszabitas_ideje*60 >= sec_vissza) {  
            var Arv_kapcs_funkc_div=document.getElementById('Arv_kapcs_funkc_div');
            if (Arv_kapcs_funkc_div != null)
              Arv_kapcs_funkc_div.style.display='none';            
            var refresh_span=document.getElementById('refresh_span');
            refresh_span.innerHTML='<table><tr><td width="200" align="center"><b><i>Hosszabbítás miatt auto<br>frissítés: <span style="font-size:14pt;">'+szamlalo+ '</span> mp múlva</i></b></td></tr></table>';

            if (szamlalo==0) 
              window.location=redirect_link;
             else
              szamlalo--;
          }
        }
			  newval+=' múlva';                                                             
        }}
     else {
		 	if (task == 'listauctions')
		 	  newval='';
		 	 else 
        newval='Archiválás folyamatban...';
		
      if (forms == 1) {
        var refresh_span=document.getElementById('refresh_span');
        if (refresh_span != null)
          refresh_span.innerHTML='';
        var Arv_kapcs_funkc_div=document.getElementById('Arv_kapcs_funkc_div');
        if (Arv_kapcs_funkc_div != null)
          Arv_kapcs_funkc_div.style.display='none';
  		  var licit_div=document.getElementById('licit_div');
  		  if (licit_div != null)
          licit_div.innerHTML='Az aukció lejárt! (Archiválás folyamatban...)';
        var megveszem_span=document.getElementById('megveszem_span');
        if (megveszem_span != null)
          megveszem_span.style.display='none';
        var uzenet_kuldese_span=document.getElementById('uzenet_kuldese_span');
        if (uzenet_kuldese_span != null) {
          if (messages_nr == 0)            
            uzenet_kuldese_span.innerHTML='Nem érkezett üzenet ehhez az árveréshez!'
           else
            uzenet_kuldese_span.style.display='none';}}
      }
		el.innerHTML=newval;
	}
    if (i > 1) {
      if (nrcounters != maxtimers)
        maxtimers=nrcounters;
		window.setTimeout('setTimeLeft2('+maxtimers+', '+caller_form2+')',1000);
	}
}

var BrowserDetect = {
	init: function () {
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
		this.OS = this.searchString(this.dataOS) || "an unknown OS";
	},
	searchString: function (data) {
		for (var i=0;i<data.length;i++)	{
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) != -1)
					return data[i].identity;
			}
			else if (dataProp)
				return data[i].identity;
		}
	},
	searchVersion: function (dataString) {
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) return;
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},
	dataBrowser: [
		{
			string: navigator.userAgent,
			subString: "Chrome",
			identity: "Chrome"
		},
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari",
			versionSearch: "Version"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS : [
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			   string: navigator.userAgent,
			   subString: "iPhone",
			   identity: "iPhone/iPod"
	    },
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

};
BrowserDetect.init();

function load() { return true; }
