function in_array(stringToSearch, arrayToSearch) {
            for (s = 0; s < arrayToSearch.length; s++) {
                        thisEntry = arrayToSearch[s].toString();
                        if (thisEntry == stringToSearch) {
                                   return true;
                        }
            }
            return false;
}
function addslashes(str) {
str=str.replace(/\'/g,'\\\'');
str=str.replace(/\"/g,'\\"');
str=str.replace(/\\/g,'\\\\');
str=str.replace(/\0/g,'\\0');
return str;
}
function stripslashes(str) {
str=str.replace(/\\'/g,'\'');
str=str.replace(/\\"/g,'"');
str=str.replace(/\\\\/g,'\\');
str=str.replace(/\\0/g,'\0');
return str;
}
function isDefined(variable)
{
return (!(!(document.getElementById(variable))))
}

function toggle_id(element_id,status){
	if(status == 2){
		if(document.getElementById(element_id).style.visibility=='visible'){
			document.getElementById(element_id).style.visibility='hidden';
			
			// ajax
			new Ajax.Updater( 'ajax_error', 'favo.php?action=off' );
		}
		else{
			document.getElementById(element_id).style.visibility='visible';
			
			// ajax
			new Ajax.Updater( 'ajax_error', 'favo.php?action=on' );
		}
	}
	else{
		if(status == 1){
			document.getElementById(element_id).style.position='relative';
			document.getElementById(element_id).style.visibility='visible';
		}
		else{
			document.getElementById(element_id).style.position='absolute';
			document.getElementById(element_id).style.visibility='hidden';
		}
	}
}


function array_search( needle, haystack, strict ) {
    // http://kevin.vanzonneveld.net
    // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // *     example 1: array_search('zonneveld', {firstname: 'kevin', middle: 'van', surname: 'zonneveld'});
    // *     returns 1: 'surname'
 
    var strict = !!strict;
 
    for(var key in haystack){
        if( (strict && haystack[key] === needle) || (!strict && haystack[key] == needle) ){
            return key;
        }
    }
 
    return false;
}

function print_r( array, return_val ) {
    // http://kevin.vanzonneveld.net
    // +   original by: Michael White (http://crestidg.com)
    // +   improved by: Ben Bryan
    // *     example 1: print_r(1, true);
    // *     returns 1: 1
 
    var output = "", pad_char = " ", pad_val = 4;
 
    var formatArray = function (obj, cur_depth, pad_val, pad_char) {
        if (cur_depth > 0) {
            cur_depth++;
        }
 
        var base_pad = repeat_char(pad_val*cur_depth, pad_char);
        var thick_pad = repeat_char(pad_val*(cur_depth+1), pad_char);
        var str = "";
 
        if (obj instanceof Array || obj instanceof Object) {
            str += "Array\n" + base_pad + "(\n";
            for (var key in obj) {
                if (obj[key] instanceof Array) {
                    str += thick_pad + "["+key+"] => "+formatArray(obj[key], cur_depth+1, pad_val, pad_char);
                } else {
                    str += thick_pad + "["+key+"] => " + obj[key] + "\n";
                }
            }
            str += base_pad + ")\n";
        } else {
            str = obj.toString();
        }
 
        return str;
    };
 
    var repeat_char = function (len, pad_char) {
        var str = "";
        for(var i=0; i < len; i++) { 
            str += pad_char; 
        };
        return str;
    };
    output = formatArray(array, 0, pad_val, pad_char);
 
    if (return_val !== true) {
        document.write("<pre>" + output + "</pre>");
        return true;
    } else {
        return output;
    }
}

function toggle_playlist(){
	if(document.getElementById("favos").style.visibility == "hidden"){
		//toggle_id("favos",1);
		document.getElementById("favos").style.visibility = 'visible';
		if(playing_id > 0){
			toggle_id("favo_add",1);
		}
		toggle_id("no_favo",1);
		
		// ajax
		new Ajax.Updater( 'ajax_error', 'favo.php?action=on' );
	}
	else{
		//toggle_id("favos",0);
		document.getElementById("favos").style.visibility = 'hidden';
		toggle_id("favo_add",0);
		toggle_id("no_favo",0);
		
		// ajax
		new Ajax.Updater( 'ajax_error', 'favo.php?action=off' );
	}	
}

// frame player functions
function close_overall(){
	parent.document.getElementById('overall').rows = '*,0';
	
	parent.frame_player.document.getElementById('player_content').innerHTML = '';

}

// favo functions
extern = '';

function play(id,title,favo){
	if(!id){
		alert("Voor "+title+" is helaas nog geen video beschikbaar.");
	}
	else{
		// open window
		
		//parent.extern_player1.window.close();
		
		if (!extern.closed && extern.location) {
			extern.location.href = "http://www.nummergemist.nl/player.php?id=" + id;
		}
		else {
			extern=window.open("http://www.nummergemist.nl/player.php?id=" + id,"extern_player1",'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=400,height=200');
			if (!extern.opener) extern.opener = self;
		}
		
		extern.focus();
		
		// hide playing icon of previous song
		/*
		if(in_array(playing_id,favos)){
			toggle_id('play_'+playing_id,0);
		}*/
		/*
		playing_id = id;
		//playing_yid = yid;		
		playing_title = title;
		
		if(document.getElementById('favos').style.visibility == 'visible'){
			// -if- clicked video already is in favo -then- hide favo_add
			if(!in_array(playing_id,favos)){
				toggle_id('favo_add',1);
				//alert(print_r(favos,true));
				
				document.getElementById('title_now').innerHTML = title;
			}
			else{
				toggle_id('favo_add',0);
				toggle_id('play_'+playing_id,1);
			}
		}*/
	}
}

function add(){
	if(!in_array(playing_id,favos)){
		new_favo = "<div id='"+playing_id+"' class='favo_item'>";
		//new_favo += "";
		new_favo += "	<div style='width: 144px; overflow: hidden; float: left;' class='klein'><span id='play_"+playing_id+"' style='margin-right: 3px; position: absolute; visibility: hidden; font-weight: bold;'>></span>"+playing_title+"</div>";
		new_favo += "	<div style='float: right;'>";
		new_favo += "		<a href='#' title='Speel' onclick=\"play('"+playing_id+"','"+playing_yid+"',0,true);\"><img src='img/control_play.png' class='picto'></a> ";
		new_favo += "		<a href='#' title='Verwijder' onclick=\"del('"+playing_id+"');\"><img src='img/delete.png' class='picto'></a>";
		new_favo += "	</div>";
		new_favo += "</div>";
		document.getElementById('favo_all').innerHTML = document.getElementById('favo_all').innerHTML + new_favo;
		favos[favos.length] = playing_id;
		
		toggle_id('no_favo',0);
		toggle_id('favo_add',0);
	}
	else{
		alert('Het nummer '+playing_title+' heb je al in jouw favorieten.');
		toggle_id('favo_add',0);
	}
	
	// ajax
	new Ajax.Updater( 'favo_error', 'favo.php?action=add&song_id='+playing_id );
}
function del(favo_id){
	toggle_id(favo_id,0);
	toggle_id('play_'+favo_id,0);
	
	favos.splice(array_search(favo_id,favos),1);
	
	if(favos.length == 0){
		toggle_id('no_favo',1);
	}
	
	//ajax
	new Ajax.Updater( 'favo_error', 'favo.php?action=del&song_id='+favo_id );
}


function rate(value,id) {
	new Ajax.Updater( 'rating'+id, 'video_rate.php?id='+id+'&v='+value );
	document.getElementById('rating'+id).innerHTML = "<img src='../img/spinner.gif' class='picto'>";
}


function play_station(id){
	if(!id){
		alert("Er is helaas nog geen luister functie voor deze zender beschikbaar.");
	}
	else{
		if (!extern.closed && extern.location) {
			extern.location.href = "http://www.nummergemist.nl/player.php?station=" + id;
		}
		else {
			extern=window.open("http://www.nummergemist.nl/player.php?station=" + id,"extern_player1",'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=400,height=200');
			if (!extern.opener) extern.opener = self;
		}
		
		extern.focus();
	}
}



// Function to hide email adres from spammers
// Email.js version 5
var tld_ = new Array()
tld_[0] = "com";
tld_[1] = "nl";
tld_[2] = "net";
tld_[3] = "ws";
tld_[4] = "info";
tld_[10] = "co.uk";
tld_[11] = "org.uk";
tld_[12] = "gov.uk";
tld_[13] = "ac.uk";
var topDom_ = 13;
var m_ = "mailto:";
var a_ = "@";
var d_ = ".";

function mail(name, dom, tl, params)
{
	var s = e(name,dom,tl);
	document.write('<a href="'+m_+s+params+'">'+s+'</a>');
}
function mail2(name, dom, tl, params, display)
{
	document.write('<a href="'+m_+e(name,dom,tl)+params+'">'+display+'</a>');
}
function e(name, dom, tl)
{
	var s = name+a_;
	if (tl!=-2)
	{
		s+= dom;
		if (tl>=0)
			s+= d_+tld_[tl];
	}
	else
		s+= swapper(dom);
	return s;
}
function swapper(d)
{
	var s = "";
	for (var i=0; i<d.length; i+=2)
		if (i+1==d.length)
			s+= d.charAt(i)
		else
			s+= d.charAt(i+1)+d.charAt(i);
	return s.replace(/\?/g,'.');
}

var stat_window_id = 0;

function dd(id,direction,titles){
	number = titles.length;
	if(stat_window_id < (number-1) && direction == "up" || stat_window_id > 0 && direction != "up"){
		for(i=0; i<=(number-1); i++){
			if(document.getElementById(id+'_'+i).style.display == 'block'){
				if(direction == 'up'){
					document.getElementById(id+'_'+i).style.display = 'none';
					document.getElementById(id+'_'+(i+1)).style.display = 'block';
					stat_window_id = i+1;
					document.getElementById(id+'_title').innerHTML = titles[stat_window_id];
					break;
				}
				else{
					document.getElementById(id+'_'+i).style.display = 'none';
					document.getElementById(id+'_'+(i-1)).style.display = 'block';
					stat_window_id = i-1;
					document.getElementById(id+'_title').innerHTML = titles[stat_window_id];
					break;
				}
	  		}			
		}
	}
}
