
function $(id){ return document.getElementById(id); }

function check_mail(mail){
	if(mail.match(/[\w]{2,}@[\w]{2,}\.[\w]{2,}/))
		return true;
	else 
		return false;
}

var select_action;
/*-------------------------------------------------------------------------
	den filebrowser im popup öffnen
-------------------------------------------------------------------------*/
function open_file_browser(path,type,action){
	//win = window.open('/indie/file_browser.php?path=' + path + '&type=dir','','resizable=0,width=500,height=400,left=200,top=200');
	win = window.open('/file_browser.php?path=' + path + '&type=dir','','resizable=0,width=500,height=400,left=200,top=200');
	select_action = action;
}

/*-------------------------------------------------------------------------
	function pointer für filebrowser path empfangen
-------------------------------------------------------------------------*/
function set_file_browser_path(path,id){
	select_action(path,id);	
}
	
/*-------------------------------------------------------------------------
	den gallery creator im popup öffnen
-------------------------------------------------------------------------*/
function create_gallery(path){
	win = window.open('/admin/create_gallery.php?path=' + path + '&max_width=1000&max_height=500','','resizable=1,width=400,height=350,left=200,top=200,scrollbars=1');
	win.onSuccess = onSuccess;
}

/*-------------------------------------------------------------------------
	ein gallerybild als overlay anzeigen
	klick auf das bild schließt das overlay
-------------------------------------------------------------------------*/
function show_image(url){
	
	// mp3 player ausblenden
	$('player').style.left = "-1000px";
	
	$('image_frame').style.display = 'none';
	$('image_frame').style.width = '950px';
	$('image_frame').style.height = '500px';
	$('image_frame').innerHTML = '<div id="img_load">Bild wird geladen ...</div><img id="big_img" src="' + url + '" alt="" />';
	alpha_blend_in('image_frame',50,100);
}

/*-------------------------------------------------------------------------
	ein gallerybild wieder schließen
-------------------------------------------------------------------------*/
function close_image(){
	alpha_blend_out('image_frame',50,function(){ $('player').style.left = "10px"; });
}

/*-------------------------------------------------------------------------
	den content scroller einrichten
-------------------------------------------------------------------------*/
var scroll_offset;
var barpos;
var startpos;
var use_scroll = 0;
function init_content_scroll(pos){
	if($('content_scrollbox').offsetHeight > $('content_box').offsetHeight){
		$('content_scrollbar').style.display = 'block';
		$('content_scrollbar').onmousedown = function(event){ start_scroll(event,$('content_scrollbar')); };
		scroll_offset = $('content_box').offsetHeight - $('content_scrollbox').offsetHeight;
		startpos = pos;
		barpos = startpos;
		use_scroll = 1;
	} else {
		$('content_scrollbar').style.display = 'none';
		use_scroll = 0;
	}
}

/*-------------------------------------------------------------------------
	content scroll start
-------------------------------------------------------------------------*/
function start_scroll(event,obj){
	
	if(!event) event = window.event;
	
	var start_y = barpos;
	var m_start_y = event.clientY * 1;
	
	document.onmousemove = function(event){
		if(!event) event = window.event;
			
		var y = start_y + event.clientY - m_start_y;
		
		if(y < startpos) y = startpos;
		if(y > startpos + 240) y = startpos + 240;
		
		obj.style.top = y + 'px';
		barpos = y;
		
		obj.focus();
		
		// content scrollen
		pos = (y - startpos) / 2.4;
		
		//$('show').innerHTML = pos;
		
		scrollpos = scroll_offset / 100 * pos;
		$('content_scrollbox').style.top = scrollpos + 'px';
		
		return false;
	}
	document.onmouseup = function(){
		document.onmousemove = null;
	}
	
		
}

function scroll_up(){
	if(!use_scroll) return;
	if(barpos > startpos + 20){
		barpos -= 20;
	} else {
		barpos = startpos;
	}
	pos = (barpos - 40) / 2.4;
	scrollpos = scroll_offset / 100 * pos;
	$('content_scrollbox').style.top = scrollpos + 'px';
	$('content_scrollbar').style.top = barpos + 'px';
}

function scroll_down(){
	if(!use_scroll) return;
	if(barpos < startpos + 240){
		barpos += 20;
	} else {
		barpos = 240 + startpos;
	}
	pos = (barpos - 40) / 2.4;
	scrollpos = scroll_offset / 100 * pos;
	$('content_scrollbox').style.top = scrollpos + 'px';
	$('content_scrollbar').style.top = barpos + 'px';
}


/*-------------------------------------------------------------------------
	playlist für mp3 player anzeigen
-------------------------------------------------------------------------*/
function show_playlist(){
	close_image();
	
	var tmp = '<div id="inner">';
	for(var i=0; i < playlist.length; i++){
		var script = "onmousedown=\"play_track('" + playlist[i] + "');\""; ;
		tmp += '<a href ="javascript:void(0);"' + script + '>' + playlist[i].replace("mp3/","") + '</a>';
	}
	$('playlist_content').innerHTML = tmp + '</div>';
	
	
	alpha_blend_in('playlist_frame',30,95,function(){
		if($('inner').offsetHeight > 113){
			var links = $('inner').getElementsByTagName('a');
			for(var i=0; i < links.length; i++){
				links[i].style.width = '383px';
			}
		}
	});
	
}
var playlist;
/*-------------------------------------------------------------------------
	playlist laden - nur einmal beim start
-------------------------------------------------------------------------*/
function load_playlist(){
	ajax = new Ajax;
	if(!ajax) alert('kein ajax :(');
	ajax.params = 'path=mp3';
	ajax.url = 'inc/get_playlist.php';
	ajax.onSuccess = function(text,xml){
		playlist = eval(text);
	}
	ajax.doRequest();
}
	
/*-------------------------------------------------------------------------
	track aus playlist abspielen
-------------------------------------------------------------------------*/
function play_track(name){
	
	var tmp = '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="400" height="55" id="player_basic3" name="player_basic3" align="middle">';
	tmp += '<param name="allowScriptAccess" value="sameDomain" />';
	tmp += '<param name="movie" value="stream_mp3_player.swf?filename=' + name + '&name=' + name.replace("mp3/","") + '" />';
	tmp += '<param name="quality" value="best" />';
	tmp += '<param name="wmode" value="transparent">';
	tmp += '<param name="swliveconnect" value="true">';
	tmp += '<embed src="stream_mp3_player.swf?filename=' + name + '&name=' + name.replace("mp3/","") + '" quality="best" bgcolor="#1B1B1B" width="400" height="55" wmode="transparent" name="player_basic" id="player_basic3" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"/>';
	tmp += '</object>';
	
	$('player').innerHTML = tmp;
	alpha_blend_out('playlist_frame',30);
	
}
	
/*-------------------------------------------------------------------------
	alpha blending from 0 to 100 or max_val 
-------------------------------------------------------------------------*/
function alpha_blend_in(id,interval,_max,onComplete){
	
	var obj = $(id);
	var ie_alpha = 0;
	var moz_alpha = 0.0;
	var timer;
	
	obj.style.display = 'block';
	obj.style.filter = 'Alpha(opacity=0)';
	obj.style.MozOpacity = 0.0;
	
	function repeat_alpha(){
		obj.style.filter = 'Alpha(opacity=' + ie_alpha + ')';
		obj.style.MozOpacity = moz_alpha;
					
		ie_alpha += 10;
		moz_alpha += 0.1;
		if(ie_alpha > _max){
			obj.style.mozOpacity = _max / 100;
			obj.style.filter = 'Alpha(opacity=' + _max + ')';
			window.clearInterval(timer);
			if(onComplete) onComplete();
		}
	}
	
	timer = window.setInterval(repeat_alpha,interval);
}

/*-------------------------------------------------------------------------
	alpha blending from 100 or max_val to 0
-------------------------------------------------------------------------*/
function alpha_blend_out(id,interval,onComplete){

	var obj = $(id);
	var ie_alpha = 100;
	var moz_alpha = 1;
	var timer;
	
	obj.style.filter = 'Alpha(opacity=' + ie_alpha + ')';
	obj.style.MozOpacity = moz_alpha;
	
	function repeat_alpha(){
		ie_alpha -= 25;
		moz_alpha -= 0.25;
		obj.style.filter = 'Alpha(opacity=' + ie_alpha + ')';
		obj.style.MozOpacity = moz_alpha;
		if(ie_alpha <= 0){
			obj.style.filter = 'Alpha(opacity=' + 0 + ')';
			obj.style.MozOpacity = 0.0;
			obj.style.display = 'none';
			window.clearInterval(timer);
			if(onComplete) onComplete();
		}
	}
	
	timer = window.setInterval(repeat_alpha,interval);
}

function findeFlash (flash) {
	if (document.all) {
	  if (document.all[flash]) {
		return document.all[flash];
	  }
	  if (window.opera) {
		var movie = eval(window.document + flash);
		if (movie.SetVariable) {
		  return movie;
		}
	  }
	  return;
	}
	if(document.layers) {
	  if(document.embeds) {
		var movie = document.embeds[flash];
		if (movie.SetVariable) {
		  return movie;
		}
	  }
	  return;
	}
	if (!document.getElementById) {
	  return;
	}
	var movie = document.getElementById(flash);
	if (movie.SetVariable) {
	  return movie;
	}
	var movies = movie.getElementsByTagName('embed');
	if (!movies || !movies.length) {
	  return;
	}
	movie = movies[0];
	if (movie.SetVariable) {
	  return movie;
	}
	return;
}




/*-------------------------------------------------------------------------
	edit form mit ajax versenden
	einfach alle formularfelder durchgehen - label wird nicht als feld gelistet
	den post params string erstellen und absenden
-------------------------------------------------------------------------*/
function send_msg(){

	var params = '';
	for(var i=0; i < document.contact_form.elements.length; i++){
		if(i > 0) params += "&";
		params += document.contact_form.elements[i].name + '=' + document.contact_form.elements[i].value;
	}
	
	var ajax = new Ajax();
	if(!ajax){ alert('Fehler - Ajax konnte nicht gestartet werden!'); return; }
	ajax.url = 'inc/form.dst.php';
	ajax.method = 'POST';
	ajax.params = params;
	ajax.onSuccess = function(text,xml){
		
		var result = eval( '(' + text + ')' );
		
		if(result.confirm){
			$('contact_status').innerHTML = 'Ihre Nachricht wurde versandt !';
		} else {
			var status = '<b class="error">Folgende Felder sind falsch ausgefüllt:<br/>';
			if(result.error.name)  status += 'Name ';
			if(result.error.mail)  status += 'Email ';
			if(result.error.title) status += 'Titel ';
			if(result.error.msg)   status += 'Nachricht';
			$('contact_status').innerHTML = status + '</b>';
		}
		
	}
	ajax.doRequest();

}

/*-------------------------------------------------------------------------
	shop form mit ajax versenden
	einfach alle formularfelder durchgehen - label wird nicht als feld gelistet
	den post params string erstellen und absenden
-------------------------------------------------------------------------*/
function send_shop_msg(){

	var params = '';
	for(var i=0; i < document.shop_form.elements.length; i++){
		if(document.shop_form.elements[i].type == 'checkbox'){
			if(document.shop_form.elements[i].checked){
				if(i > 0) params += "&";
				params += document.shop_form.elements[i].name + '=1';
			}
		} else {
			if(i > 0) params += "&";
			params += document.shop_form.elements[i].name + '=' + document.shop_form.elements[i].value;
		}
	}
	
	var ajax = new Ajax();
	if(!ajax){ alert('Fehler - Ajax konnte nicht gestartet werden!'); return; }
	ajax.url = 'inc/shop_form.dst.php';
	ajax.method = 'POST';
	ajax.params = params;
	ajax.onSuccess = function(text,xml){
		
		var result = eval( '(' + text + ')' );
		
		if(result.confirm){
			$('shop_status').innerHTML = 'Ihre Bestellung wurde versandt !';
		} else {
			var status = '<b class="error">Folgende Felder sind falsch ausgefüllt:<br/>';
			if(result.error.name)  status += 'Name ';
			if(result.error.mail)  status += 'Email ';
			$('shop_status').innerHTML = status + '</b>';
		}
		
	}
	//alert(ajax.params);
	ajax.doRequest();

}

/*-------------------------------------------------------------------------
	newsletter anmeldung durchführen
-------------------------------------------------------------------------*/
function nl_subscribe(email,type,cmd){
	var ajax = new Ajax();
	if(!ajax){ alert('Fehler - Ajax konnte nicht gestartet werden!'); return; }
	ajax.url = 'inc/newsletter.dst.php';
	ajax.method = 'POST';
	ajax.params = 'email=' + email + '&type=' + type + '&cmd=' + cmd;
	ajax.onSuccess = function(text,xml){
		
		var result = eval( '(' + text + ')' );
		
		if(result.new_id)
			alert('Du wurdes in den Newsletter aufgenommen !');
		if(result.deleted)
			alert('Du wurdes aus dem Newsletter entfern !');
	}
	ajax.doRequest();
}