// Cross Browser DOM
// copyright Stephen Chapman, 4th Jan 2005
// you may copy this code but please keep the copyright notice as well
var aDOM = 0, ieDOM = 0, nsDOM = 0; var stdDOM = document.getElementById;
if (stdDOM) aDOM = 1; else {ieDOM = document.all; if (ieDOM) aDOM = 1; else {
var nsDOM = ((navigator.appName.indexOf('Netscape') != -1)
&& (parseInt(navigator.appVersion) ==4)); if (nsDOM) aDOM = 1;}}


function xDOM(objectId, wS) {
if (stdDOM) return wS ? document.getElementById(objectId).style:
document.getElementById(objectId);
if (ieDOM) return wS ? document.all[objectId].style: document.all[objectId];
if (nsDOM) return document.layers[objectId];
}                  

function submitform(formid)
{
 document.forms[formid].submit();
}

function formfieldempty()
{
    var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i	;
		
    if ( document.contactform.name.value == '' )
    {
        alert('Sorry. No name was entered!')
        return false;
    }
    if ( document.contactform.email.value == '' )
    {
        alert('Sorry. No e-mail was entered!')
        return false;
    }
	
    if ( ! filter.test( document.contactform.email.value ) )
    {
        alert('Sorry. Invalid e-mail entered!')
        return false;
    }

	return true;
}

function calledfrom(twocharalbum, albumname)
{
var visited = getQuerystring('caller');

if (visited==null) visited=""; 
var fullalbum = twocharalbum + "_player.htm?bk=" + visited;
window.open( fullalbum,"remote","width=450, height=230,resizable=no, top=100, left=500");
}

function callplayer(twocharalbum, albumname, visited, noautoplay)
{
	if (noautoplay==1)
	{
var objstring   = '<object type="application/x-shockwave-flash" data="http://jchmusic.com/xspf/xspf_player.swf?autoload=1&bg_color=ffffff&playlist_url=http://jchmusic.com/xspf/' + albumname + visited + '.xspf&autoplay=0&repeat_playlist=1&player_title=JCHMusic&playlist_size=3" width="350" height="184">' +
'<param name="movie" value="http://jchmusic.com/xspf/xspf_player.swf?auto_play=0&autoload=1&bg_color=ffffff&playlist_url=http://jchmusic.com/xspf/' + albumname + visited + '.xspf&repeat_playlist=1&player_title=JCHMusic Player&playlist_size=3"/></object>';
	}
	else
var objstring   = '<object type="application/x-shockwave-flash" data="http://jchmusic.com/xspf/xspf_player.swf?autoload=1&bg_color=ffffff&playlist_url=http://jchmusic.com/xspf/' + albumname + visited + '.xspf&autoplay=1&repeat_playlist=1&player_title=JCHMusic&playlist_size=3" width="350" height="184">' +
'<param name="movie" value="http://jchmusic.com/xspf/xspf_player.swf?auto_play=1&autoload=1&bg_color=ffffff&playlist_url=http://jchmusic.com/xspf/' + albumname + visited + '.xspf&repeat_playlist=1&player_title=JCHMusic Player&playlist_size=3"/></object>';

document.write(objstring);

}

function winopen(u,w,h)
{
wi = "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,copyhistory=yes,width=" ;
wi += w;
wi += ",height=";
wi += h;

msg=open("","newwindow",wi);
msg.document.write("<img border='0' src='");
msg.document.write(u);
msg.document.write("'>");
}

/*
function getQuerystringOld(key, default_)
{if (default_==null) default_="";
  key = key.replace(/[\[]/,'\\\[').replace(/[\]]/,'\\\]');
  var regex = new RegExp("[\\?&amp;]"+key+"=([^&amp;#]*)");
  var qs = regex.exec(window.location.href);
  if(qs == null)
    return default_;
  else
    return qs[1];
}
*/

function getQuerystring(key, default_)
{
    if (default_==null)
    {
        default_="";
    }
    var search = unescape(location.search);
    if (search == "")
    {
        return default_;
    }
    search = search.substr(1);
    var params = search.split("&");
    for (var i = 0; i < params.length; i++)
    {
        var pairs = params[i].split("=");
        if(pairs[0] == key)
        {
            return pairs[1];
        }
    }
    return default_; 
}

function popupimage(myimage,w,h,scroll,pos)
{
  var win=null;
  if(pos=="random"){LeftPosition=(screen.width)?Math.floor(Math.random()*(screen.width-w)):100;TopPosition=(screen.height)?Math.floor(Math.random()*((screen.height-h)-75)):100;}
  if(pos=="center"){LeftPosition=(screen.width)?(screen.width-w)/2:100;TopPosition=(screen.height)?(screen.height-h-100)/2:100;}
  else if((pos!="center" && pos!="random") ||
  pos==null){LeftPosition=0;TopPosition=20}
  settings='width='+w+',height='+h+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',location=no,directories=no,status=yes,menubar=no,toolbar=no,resizable=yes';
  // confirm("test.htm");
  win=open("test.htm","",settings);
  win.document.write("<HTML><BODY><img src='" + myimage + "'></BODY></HTML>");
  win.focus();
}

//
function openplayer()
{
var pc = document.getElementById('pgcontainer');		
var mp = document.getElementById('myplayer');	
var x = '450px';
var y = ( window.screenY + 100 ) + 'px';
mp.style.display = 'block';
moveObjTo('myplayer',x,y);
pc.style.opacity = '.7';
}
//

function albumcovermover()
{
var x = (posRight() - 450 ) + 'px';
var y = (posBottom()- 200 ) + 'px';
moveObjTo('movingalbumcover',x,y);
setObjVis('movingalbumcover','visible');
}

function validate(form){
 var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i ;	
 var email = form.email.value;
 var name = form.name.value;
 var errors = [];

 if (!checkLength(email)) {
  errors[errors.length] = "You must enter an e-mail address.";
 }
 
 if (! filter.test(email)) 
  errors[errors.length] = "You must enter a valid e-mail address.";
  
 if (!checkLength(name)) {
  errors[errors.length] = "You must enter your name.";
 }

 if (errors.length > 0) {
  reportErrors(errors);
  return false;
 }

 return true;
}

function checkLength(text, min, max){
 min = min || 1;
 max = max || 10000;

 if (text.length < min || text.length > max) {
  return false;
 }
 return true;
}

function reportErrors(errors){
 var msg = "There were some problems...\n";
 var numError;
 for (var i = 0; i<errors.length; i++) {
  numError = i + 1;
  msg += "\n" + numError + ". " + errors[i];
 }
 alert(msg);
}

function objWidth(objectID) {var obj = xDOM(objectID,0); if(obj.offsetWidth) return  obj.offsetWidth; if (obj.clip) return obj.clip.width; return 0;}

function objHeight(objectID) {var obj = xDOM(objectID,0); if(obj.offsetHeight) return  obj.offsetHeight; if (obj.clip) return obj.clip.height; return 0;}

function objLeft(objectID) {var obj = xDOM(objectID,0);var objs = xDOM(objectID,1); if(objs.left) return objs.left; if (objs.pixelLeft) return objs.pixelLeft; if (obj.offsetLeft) return obj.offsetLeft; return 0;}

function objTop(objectID) {var obj = xDOM(objectID,0);var objs = xDOM(objectID,1); if(objs.top) return objs.top; if (objs.pixelTop) return objs.pixelTop; if (obj.offsetTop) return obj.offsetTop; return 0;}

function objRight(objectID) {return objLeft(objectID)+objWidth(objectID);}

function objBottom(objectID) {return objTop(objectID)+objHeight(objectID);}

function objLayer(objectID) {var objs = xDOM(objectID,1); if(objs.zIndex) return objs.zIndex; return 0;}

function objVisible(objectID) {var objs = xDOM(objectID,1); if(objs.visibility == 'hide' || objs.visibility == 'hidden') return 'hidden'; return 'visible';}

function pageWidth() {return window.innerWidth != null? window.innerWidth : document.documentElement && document.documentElement.clientWidth ?       document.documentElement.clientWidth : document.body != null ? document.body.clientWidth : null;}

function pageHeight() {return  window.innerHeight != null? window.innerHeight : document.documentElement && document.documentElement.clientHeight ?  document.documentElement.clientHeight : document.body != null? document.body.clientHeight : null;}

function posLeft() {return typeof window.pageXOffset != 'undefined' ? window.pageXOffset :document.documentElement && document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ? document.body.scrollLeft : 0;}

function posTop() {return typeof window.pageYOffset != 'undefined' ?  window.pageYOffset : document.documentElement && document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ? document.body.scrollTop : 0;}

function posRight() {return posLeft()+pageWidth();}
function posBottom() {return posTop()+pageHeight();}

// More Object Functions
// copyright Stephen Chapman, 18th Jan 2005
// you may copy these functions but please keep the copyright notice as well
function setObjVis(objectID,vis) {var objs = xDOM(objectID,1); objs.visibility = vis;} 

function toggleObjVis(objectID) {var objs = xDOM(objectID,1); var vis = objs.visibility;  objs.visibility = (vis == "visible" || vis == "show") ? 'hidden' : 'visible';} 

function moveObjTo(objectID,x,y) {var objs = xDOM(objectID,1); objs.left = x; objs.top = y;}

function moveObjBy(objectID,x,y) {var obj = xDOM(objectID,0);var objs = xDOM(objectID,1); if (obj.offsetLeft != null) {var l = obj.offsetLeft; var t = obj.offsetTop; objs.left = l+x; objs.top = t+y;} else if (objs.pixelLeft != null) {objs.pixelLeft += x; objs.pixelTop += y;} else obj.moveBy(x,y);}

function moveObjLayer(objectID,z) {var objs = xDOM(objectID,1); objs.zIndex = z;}

function disablecssmenu(){	
//alert('disable');
disablemenu=1;
}

//CSSHorizontalMenu JS
var cssmenuids=["cssmenu1"] //Enter id(s) of CSS Horizontal UL menus, separated by commas
var csssubmenuoffset=2 //Offset of submenus from main menu. Default is 0 pixels.
var disablemenu=0;

function createcssmenu2(){
if(disablemenu==1) {disablemenu=0; return; }
for (var i=0; i<cssmenuids.length; i++){
  var ultags=document.getElementById(cssmenuids[i]).getElementsByTagName("ul")
    for (var t=0; t<ultags.length; t++){
			ultags[t].style.top=ultags[t].parentNode.offsetHeight+csssubmenuoffset+"px"
    	var spanref=document.createElement("span")
			spanref.className="arrowdiv"
			spanref.innerHTML="&nbsp;&nbsp;&nbsp;&nbsp;"
			ultags[t].parentNode.getElementsByTagName("a")[0].appendChild(spanref)
    	ultags[t].parentNode.onmouseover=function(){
					this.style.zIndex=100
    	this.getElementsByTagName("ul")[0].style.visibility="visible"
					this.getElementsByTagName("ul")[0].style.zIndex=0
    	}
    	ultags[t].parentNode.onmouseout=function(){
					this.style.zIndex=0
					this.getElementsByTagName("ul")[0].style.visibility="hidden"
					this.getElementsByTagName("ul")[0].style.zIndex=100
    	}
    }
  }
}

if (window.addEventListener)
	window.addEventListener("load", createcssmenu2, false)
else if (window.attachEvent)
	window.attachEvent("onload", createcssmenu2)
