/* 
------------------------------------------
 Flipbox written by CrappoMan
 simonpatterson@dsl.pipex.com
------------------------------------------
*/

//modified by Wooya
function flipBox(who) {
   var tmp;
   if (document.images['b_' + who].src.indexOf('_on') == -1) {
      tmp = document.images['b_' + who].src.replace('_off', '_on');
      document.getElementById('box_' + who).style.display = 'none';
      if (document.getElementById('box_' + who + '_diff')) {
         document.getElementById('box_' + who + '_diff').style.display = 'block';
      }
      document.images['b_' + who].src = tmp;
      disply = 'none';
      now = new Date();
      now.setTime(now.getTime()+1000*60*60*24*365);
      expire = (now.toGMTString());
      document.cookie = "fusion_box_"+who+"=" + escape(disply) + "; expires="+expire;
   } else {
      tmp = document.images['b_' + who].src.replace('_on', '_off');
      document.getElementById('box_' + who).style.display = 'block';
      if (document.getElementById('box_' + who + '_diff')) {
         document.getElementById('box_' + who + '_diff').style.display = 'none';
      }
      document.images['b_' + who].src = tmp;
      disply = 'block';
      now = new Date();
      now.setTime(now.getTime()+1000*60*60*24*365);
      expire = (now.toGMTString());
      document.cookie = "fusion_box_"+who+"=" + escape(disply) + "; expires="+expire;
   }
}

//modified by wooya
function addText(elname, strFore, strAft, formname) {
   if (formname == undefined) formname = 'inputform';
   if (elname == undefined) elname = 'message';
   element = document.forms[formname].elements[elname];
   element.focus();
   // for IE 
   if (document.selection) {
	   var oRange = document.selection.createRange();
	   var numLen = oRange.text.length;
	   oRange.text = strFore + oRange.text + strAft;
	   return false;
   // for FF and Opera
   } else if (element.setSelectionRange) {
      var selStart = element.selectionStart, selEnd = element.selectionEnd;
			var oldScrollTop = element.scrollTop;
      element.value = element.value.substring(0, selStart) + strFore + element.value.substring(selStart, selEnd) + strAft + element.value.substring(selEnd);
      element.setSelectionRange(selStart + strFore.length, selEnd + strFore.length);
			element.scrollTop = oldScrollTop;      
      element.focus();
   } else {
			var oldScrollTop = element.scrollTop;
      element.value += strFore + strAft;
			element.scrollTop = oldScrollTop;      
      element.focus();
	}
}

//modified by Wooya
function insertText(elname, what, formname) {
   if (formname == undefined) formname = 'inputform';
   if (document.forms[formname].elements[elname].createTextRange) {
       document.forms[formname].elements[elname].focus();
       document.selection.createRange().duplicate().text = what;
   } else if ((typeof document.forms[formname].elements[elname].selectionStart) != 'undefined') {
       // for Mozilla
       var tarea = document.forms[formname].elements[elname];
       var selEnd = tarea.selectionEnd;
       var txtLen = tarea.value.length;
       var txtbefore = tarea.value.substring(0,selEnd);
       var txtafter =  tarea.value.substring(selEnd, txtLen);
       var oldScrollTop = tarea.scrollTop;
       tarea.value = txtbefore + what + txtafter;
       tarea.selectionStart = txtbefore.length + what.length;
       tarea.selectionEnd = txtbefore.length + what.length;
       tarea.scrollTop = oldScrollTop;
       tarea.focus();
   } else {
       document.forms[formname].elements[elname].value += what;
       document.forms[formname].elements[elname].focus();
   }
}

//modified by Wooya to W3C standards
function show_hide(msg_id) {
   document.getElementById(msg_id).style.display = document.getElementById(msg_id).style.display == 'none' ? 'block' : 'none';
}

//modified by Wooya to work properly with Opera
function correctPNG() {
   // correctly handle PNG transparency in Win IE 5.5 or higher.
   if (navigator.appName=="Microsoft Internet Explorer" && navigator.userAgent.indexOf("Opera")==-1) {
      for(var i=0; i<document.images.length; i++) {
         var img = document.images[i]
         var imgName = img.src.toUpperCase()
         if (imgName.substring(imgName.length-3, imgName.length) == "PNG") {
            var imgID = (img.id) ? "id='" + img.id + "' " : ""
            var imgClass = (img.className) ? "class='" + img.className + "' " : ""
            var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "
            var imgStyle = "display:inline-block;" + img.style.cssText
            if (img.align == "left") imgStyle = "float:left;" + imgStyle
            if (img.align == "right") imgStyle = "float:right;" + imgStyle
            if (img.parentElement.href) imgStyle = "cursor:hand;" + imgStyle
            var strNewHTML = "<span " + imgID + imgClass + imgTitle
            + " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";"
            + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
            + "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>"
            img.outerHTML = strNewHTML
            i = i-1
         }
      }
   }
}

function getStyle(el,style)
{
	if(typeof el == "string")
		var element = document.getElementById(el);
	else
		var element = el;
	if (element.currentStyle)
		var value = element.currentStyle[style];
	else if (window.getComputedStyle)
		var value = document.defaultView.getComputedStyle(element,null).getPropertyValue(style);
	return value;
}

/***********************************************
* Drop Down/ Overlapping Content- © Dynamic Drive (www.dynamicdrive.com)
* This notice must stay intact for legal use.
* Visit http://www.dynamicdrive.com/ for full source code
***********************************************/
function getposOffset(overlay, offsettype){
   var totaloffset=(offsettype=='left')? overlay.offsetLeft : overlay.offsetTop;
   var parentEl=overlay.offsetParent;
   while (parentEl!=null) {
      if(getStyle(parentEl, "position") != "relative"){
	     totaloffset=(offsettype=='left')? totaloffset+parentEl.offsetLeft : totaloffset+parentEl.offsetTop;
      }
	  parentEl=parentEl.offsetParent;
   }
   return totaloffset;
}
   
function overlay(curobj, subobjstr, opt_position){
   if (document.getElementById){
      var subobj=document.getElementById(subobjstr)
      subobj.style.display=(subobj.style.display!='block')? 'block' : 'none'
      var xpos=getposOffset(curobj, 'left')+((typeof opt_position!='undefined' && opt_position.indexOf('right')!=-1)? -(subobj.offsetWidth-curobj.offsetWidth) : 0) 
      var ypos=getposOffset(curobj, 'top')+((typeof opt_position!='undefined' && opt_position.indexOf('bottom')!=-1)? curobj.offsetHeight : 0)
      subobj.style.left=xpos+'px'
      subobj.style.top=ypos+'px'
      return false
   }
   else
   return true
}

function overlayclose(subobj){
document.getElementById(subobj).style.display='none'
}

//written by Wooya
NewWindowPopUp = null;
function OpenWindow(src, wdth, hght, wcenter) {
   //close previous popup window
   if (NewWindowPopUp != null) {
        NewWindowPopUp.close();
        NewWindowPopUp = null;
   }
   //if center parameter given center opoup window 
   if (wcenter == false) { 
      wtop = 0;
      wleft = 0;
   } else {
        wtop = (screen.availHeight-hght)/2;
        wleft = (screen.availWidth-wdth)/2;
   }
   NewWindowPopUp = window.open(src, "","toolbar=no,menubar=no,location=no,personalbar=no,scrollbars=yes,status=no,directories=no,resizable=yes,height="+hght+",width="+wdth+",top="+wtop+",left="+wleft+"");
   NewWindowPopUp.focus();
}

//Image Resizer by Matonor
function resize_forum_imgs(){
	var max;
	var viewport_width;
	//Get the width of the viewport
	if(self.innerWidth)
		viewport_width = self.innerWidth;
	else if(document.documentElement && document.documentElement.clientWidth)
		viewport_width = document.documentElement.clientWidth;
	else if(document.body)
		viewport_width = document.body.clientWidth;
	else
		viewport_width = 1000;

	//Set the max width/height according to the viewport-width
	if(viewport_width <= 800)
		max = 200;
	else if(viewport_width < 1152)
		max = 300;
	else if(viewport_width >= 1152)
		max = 400;
	
	//loop through images that have the className forum-img
	for(var i=0; i<document.images.length; i++) {
		var image = document.images[i];
		if(image.className!="forum-img"){
			continue;
		}
		var height = image.height;
		var width = image.width;
		var resized = false;
		//resize the image with correct aspect ratio
		if(width <= height){
			if(height > max){
				image.height = max;
				image.width = width*(max/height);
				resized = true;
			}
		}else{
			if(width > max){
				image.width = max;
				image.height = height*(max/width);
				resized = true;
			}
		}
		
		//Find the div around the image and the next element around the div.
		var span = image.parentNode;
		var parent = span.parentNode;
		if(span.className != "forum-img-wrapper"){
			continue;
		}
		
		if(resized){ //Insert the link and make the span inline
			span.style.display = "inline";
			if(parent.tagName != "A"){
				span.onclick = new Function("OpenWindow('"+image.src+"', "+(width+40)+", "+(height+40)+", true)");
				span.onmouseover = "this.style.cursor='pointer'";
			}
		}else{ //only make the span inline
			span.style.display = "inline";
		}
	}
	return true;
}

function onload_events(){//Add function calls to be executed onload here
	resize_forum_imgs();
	correctPNG();
}

if (!window.XMLHttpRequest)
{
   XMLHttpRequest = function()
   {
      return new ActiveXObject('Microsoft.XMLHTTP');
   }
}

if (typeof XMLHttpRequest == "undefined") {
  XMLHttpRequest = function () {
    try { return new ActiveXObject("Msxml2.XMLHTTP.6.0"); }
      catch (e1) {}
    try { return new ActiveXObject("Msxml2.XMLHTTP.3.0"); }
      catch (e2) {}
    try { return new ActiveXObject("Msxml2.XMLHTTP"); }
      catch (e3) {}
    try { return new ActiveXObject("Microsoft.XMLHTTP"); }
      catch (e4) {}
    throw new Error("This browser does not support XMLHttpRequest.");
  };
}

function zobraz_player(id)
{
        var div = document.getElementById('player');
		div.style.display='';
        div.innerHTML = 'Loading...';
	  
        var xhr = new XMLHttpRequest();
        xhr.open('GET', '/play/player.php?id='+id, true);
        xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
        if (xhr.overrideMimeType)
        {
            xhr.setRequestHeader('Connection', 'close');
        }
        xhr.send(null);
        xhr.onreadystatechange = function()
            {
                if (xhr.readyState == 4)
                {
                    div.innerHTML = xhr.responseText;
                }
            }
}

function zobraz_player_best(id)
{
	var playerkod = '';
	playerkod += '<div float:left;>';
	playerkod += '<object type="application/x-shockwave-flash" data="/play/mp3zoneplayer.swf?xmlPath=/play/playerplaylist_rebricek.php?file='+id+'" height="200px" width="400px">';
	playerkod += '<param name="movie" value="/play/mp3zoneplayer.swf?xmlPath=/play/playerplaylist_rebricek.php?file='+id+'">';
	playerkod += '<param name="wmode" value="transparent">';
	playerkod += '<param name="allowscriptaccess" value="always">';
	playerkod += '<embed src="/play/mp3zoneplayer.swf?xmlPath=/play/playerplaylist_rebricek.php?file='+id+'" type="application/x-shockwave-flash" wmode="transparent" allowscriptaccess="always" height="200px" width="400px"></embed>';
	playerkod += '</object>';
	playerkod += '</div>';
	
	document.getElementById('player').innerHTML = playerkod;
	document.getElementById('play_box').style.display = '';

} 

function addtofavouritesmp3(id, mode, refresh)
{
	if (!document.getElementById('ajax_message'))
	{
		var box = document.createElement('div');
		box.setAttribute('id', 'ajax_message');
		document.body.appendChild(box);
	}
	else
	{
      var box = document.getElementById('ajax_message');
	}
    
	box.innerHTML = '<img src="/images/ajax-loader.gif" alt="loading" />';
	  
    var xhr = new XMLHttpRequest();
    if (mode == 'add'){
		xhr.open('GET', '/addtofavourites.php?id='+id+'&mode=add', true);
	}
	else if (mode == 'remove'){
		xhr.open('GET', '/addtofavourites.php?id='+id+'&mode=remove', true);
	}
	
    xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    if (xhr.overrideMimeType)
    {
        xhr.setRequestHeader('Connection', 'close');
    }
    xhr.send(null);
    xhr.onreadystatechange = function()
        {
            if (xhr.readyState == 4)
            {
                box.innerHTML = xhr.responseText;
            }
        }
	if (refresh){
		setTimeout("location.reload(true)",2000)
	}
	setTimeout("close_ajax_message()",4000)
}

function close_ajax_message()
{
	document.body.removeChild(document.getElementById('ajax_message'));
}

function nahlas_send(captcha_code, id){
	if (captcha_code==false){
		if (!document.getElementById('ajax_mssgbox')){
			var box = document.createElement('div');
			box.setAttribute('id', 'ajax_mssgbox');
			document.body.appendChild(box);
		}
		else{
			var box = document.getElementById('ajax_mssgbox');
		}
		box.style.left = ((window.screen.availWidth/2)-100)+'px';
		var xhr = new XMLHttpRequest();
		xhr.open('GET', '/nahlas.php?id='+id, true);
		xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
		if (xhr.overrideMimeType)
		{
			xhr.setRequestHeader('Connection', 'close');
		}
		xhr.send(null);
		xhr.onreadystatechange = function()
        {
			if (xhr.readyState == 4)
            {
                box.innerHTML = xhr.responseText;
            }
        }
	}
	else{
		document.body.removeChild(document.getElementById('ajax_mssgbox'));
		if (!document.getElementById('ajax_message'))
		{
			var box = document.createElement('div');
			box.setAttribute('id', 'ajax_message');
			document.body.appendChild(box);
		}
		else
		{
		  var box = document.getElementById('ajax_message');
		}
		box.innerHTML = '<img src="/images/ajax-loader.gif" alt="loading" />';
	  
		var xhr = new XMLHttpRequest();
		xhr.open('POST', '/nahlas.php?id='+id, true);
		
		xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
		if (xhr.overrideMimeType)
		{
			xhr.setRequestHeader('Connection', 'close');
		}
		xhr.send('captcha_code='+captcha_code);
		xhr.onreadystatechange = function()
			{
				if (xhr.readyState == 4)
				{
					box.innerHTML = xhr.responseText;
				}
			}
		setTimeout("close_ajax_message()",3000);
	}

}

function web_mp3_search(id)
{
        var div = document.getElementById('websearch');
		div.style.display='';
        div.innerHTML = '<center><b>Prosím čakajte, vyhľadávam ďalšie mp3 na internete.</b></center>';
	  
        var xhr = new XMLHttpRequest();
        xhr.open('GET', 'curl_browser.php?id='+id, true);
        xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
        if (xhr.overrideMimeType)
        {
            xhr.setRequestHeader('Connection', 'close');
        }
        xhr.send(null);
        xhr.onreadystatechange = function()
            {
                if (xhr.readyState == 4)
                {
                    div.innerHTML = xhr.responseText;
                }
            }
}


function autocomplete(text){
        var div = document.getElementById('autocomplete');
		//div.style.position='absolute';
		//div.style.top=(document.getElementById('mp3searchform').scrollTop+30)+'px';
		//div.style.left=(document.getElementById('mp3searchform').clientLeft)+'px';
        //div.innerHTML = '<img src="/images/ajax-loader.gif" alt="loading" />';
	  
        var xhr = new XMLHttpRequest();
        xhr.open('POST', 'autocomplete.php', true);
        xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
        if (xhr.overrideMimeType)
        {
            xhr.setRequestHeader('Connection', 'close');
        }
        xhr.send('s='+text);
        xhr.onreadystatechange = function()
            {
                if (xhr.readyState == 4)
                {
                    div.style.display='block';
					div.innerHTML = xhr.responseText;
                }
            }
}

function check_mp3_status(url)
{
        var div = document.getElementById('check_mp3');
        div.innerHTML = '<img src="/images/ajax-loader.gif" alt="loading" />';
	  
        var xhr = new XMLHttpRequest();
        xhr.open('POST', 'checkmp3url.php', true);
        xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
        if (xhr.overrideMimeType)
        {
            xhr.setRequestHeader('Connection', 'close');
        }
        xhr.send('url='+encodeURIComponent(url)); 
        xhr.onreadystatechange = function()
            {
                if (xhr.readyState == 4)
                {
                    if(xhr.responseText == '0'){
						div.innerHTML = '<img src="/images/ok.png" alt="OK" width="20px"/>';
					}
					else{
						div.innerHTML = '<img src="/images/bad.png" alt="BAD" width="20px"/>';
					}
                }
            }
}

function ajax_load_mp3_size(id){
	var div = document.getElementById('ajax_load_velkost__'+id);
    var xhr = new XMLHttpRequest();
    xhr.open('GET', '/checkmp3link.php?id='+id, true);
    if (xhr.overrideMimeType)
    {
        xhr.setRequestHeader('Connection', 'close');
    }
    xhr.send(null);
    xhr.onreadystatechange = function()
        {
            if (xhr.readyState == 4)
            {
                div.innerHTML = xhr.responseText;
            }
        }
}

window.onload = onload_events;
