function show_hide(id) {
  if (document.getElementById(id).style.visibility=='hidden'){
    document.getElementById(id).style.visibility='visible';
    document.getElementById(id).style.display='block';
  }
 else{
    document.getElementById(id).style.visibility='hidden';
    document.getElementById(id).style.display='none';
 }
return;
}



var OSame="Unknown OS";
if (navigator.appVersion.indexOf("Win")!=-1) OSName="Windows";
if (navigator.appVersion.indexOf("Mac")!=-1) OSName="MacOS";
if (navigator.appVersion.indexOf("X11")!=-1) OSName="UNIX";
if (navigator.appVersion.indexOf("Linux")!=-1) OSName="Linux";


function addressbook(){
        adwindow=window.open('/cgi-bin/addressbook.pl?inserter=yes;returnTO='+document.location,'address','location=no,menubar=no,status=no,scrollbars=yes,resizable=yes,toolbar=no,height=450,width=370');
        if (adwindow.opener == null) adwindow.opener = self;
        }


if ((document.referrer ==
'http://pbslearnenglish.org/cgi-bin/mail.pl')  && (document.location != 
'http://pbslearnenglish.org/workspace/community/mail/sendmail.xml')){
openMinimal("/workspace/community/mail/confirm.xml",400,350); }




function click_hottext(text,thisString) {
 var link = "/cgi-bin/temp_dictionary.pl?hottext=" + escape(text)+ ";this_string="+escape(thisString);
 dictionarywindow = window.open(link, "dictionary", "scrollbars,resizable,height=200,width=430");
 if (dictionarywindow.focus) dictionarywindow.focus();
}


function popup(URL,w,h)  {
  var ran_number=Math.round(Math.random()*100);
  var winname = "win"+ran_number;
  if (!w) w = 520;
  if (!h) h = 550;
  var popupwin = window.open (URL, winname, "toolbar=yes,width="+w+",height="+h+",status=no,scrollbars=yes,resizable=yes,menubar=no,location=no"); 
  if (popupwin.focus) popupwin.focus();
} 



var soundwindow;

function hearpage(pagecode) {
 var link = "/sound/pages/page"+pagecode+".mov";
 soundwindow = open(link, "sound", "resizable,height=30,width=130");
 soundwindow.focus();
}

function listenWindow(src) {
//defunct function
 var extension = '.mov';
 var dir = '/audio/';
 var link = dir + src + extension;
 soundwindow = open(link, "sound", "resizable,height=30,width=130");
 soundwindow.focus();
}

function playMovie(movieName,src) {
// day Fri Mar  2 03:40:17 EST 2001
if (!src) {
alert('Audio for this page is not available.');
return;
}
// jd mar 2 4:53 EST
//if (document[movieName]) {

// cheap fix until we find something better
//browsername=navigator.userAgent.toLowerCase();
//if (browsername.indexOf("msie")!=-1 || OSName != "Windows") 
//{
//EXPLORER and assorted other non netscape+windoze combos

//day added screenx,screeny (left,top) Thu May 17 04:48:30 EDT 2001
// IE uses top,left; NN uses screeny,screenx
var top = 30; 
var left = 20;
soundwindow = open(src,"sound","resizable,height=30,width=130,screenx="+left+",screeny="+top+",left="+left+",top="+top);

//soundwindow.focus();

//}
// else {
   //NETSCAPE
//document[movieName].Play();
//  };



//}
}

function dictionary(pageid,session) {
 var link = "/cgi-bin/dictionary.pl?pageid=" +pageid+ ";session=" +session;
 var dictionarywindow = open(link, "dictionary", "scrollbars,resizable,height=520,width=360");
 dictionarywindow.focus();
}

rolloverImagesOn=new Array();
rolloverImagesOff=new Array();
rolloverPeekImagesOn=new Array();
rolloverPeekImagesOff=new Array();

function rolloverOn(name) {
 if (! document.images)return;
 if (document.images[name]) {
      document.images[name].src=rolloverImagesOn[name].src;
 }
}

function rolloverOff(name) {
 if (! document.images)return;
 if (document.images[name]) {
       document.images[name].src=rolloverImagesOff[name].src;
 }
}

function rolloverLoad(name,on,off) {
  rolloverImagesOn[name]=new Image();
  rolloverImagesOn[name].src=on;
  rolloverImagesOff[name]=new Image();
  rolloverImagesOff[name].src=off;
}

function rolloverOn2(name,peek) {
 if (! document.images)return;
 if (document.images[name]) {
      document.images[name].src=rolloverImagesOn[name].src;
       }
 if (document.images[peek]){
   document.images[peek].src=rolloverPeekImagesOn[name].src; 
 }
}

function rolloverOff2(name,peek) {
 if (! document.images)return;
 if (document.images[name]) {
       document.images[name].src=rolloverImagesOff[name].src;
 }
 if (document.images[peek]){
   document.images[peek].src=rolloverPeekImagesOff[name].src; 
 }
}

function rolloverLoad2(name,on,off,peek_on,peek_off) {
  rolloverLoad(name,on,off);
  rolloverPeekImagesOn[name]=new Image();
  rolloverPeekImagesOn[name].src=peek_on;
  rolloverPeekImagesOff[name]=new Image();
  rolloverPeekImagesOff[name].src=peek_off;
}


function preloadImages() {
//var doc=document; if(doc.images){ if(!doc.newarray) doc.newarray=new Array();
//var x,y=doc.newarray.length,a=preloadImages.arguments; for(x=0; x<a.length; x++)
//if (a[x].indexOf("#")!=0){ doc.newarray[y]=new Image; doc.newarray[y++].src=a[x];}}
}

function feedback(id,answer) {
if (
(document.testform[id][0].checked &&
document.testform[id][0].value == answer)
||
(document.testform[id][1].checked &&
document.testform[id][1].value == answer)
) {
document.testform[id+"_feedback"].value = "Correct!";
} else {
document.testform[id+"_feedback"].value = "Try again.";
}
}

function feedback_fitb(test) {
 for(qnum=1;qnum<=5;qnum++){
  for(pnum=1;pnum<=2;pnum++){
    if (document.testform[test+"q"+qnum+"p"+pnum+"_feedback"]) {
      document.testform[test+"q"+qnum+"p"+pnum+"_feedback"].value = document.testform[test+"q"+qnum+"p"+pnum+"_answer"].value;
    } 
  }
 }
}


function openScript(url, width, height) {
if (url == "/cgi-bin/portal/forum/messagecenter.cgi"){
url= url+window.location.search;
}
        var Win = window.open(url,"openScript",'width=' + width + ',height=' + height + ',resizable=1,scrollbars=yes,menubar=yes,status=yes' );

Win.focus();
}

function openMinimal(url, width, height) {

        var Win = window.open(url,"openScript",'width=' + width + ',height=' + height + ',resizable=yes,scrollbars=yes,menubar=no,status=no' );

Win.focus();
}





// damien Mon Jun  9 21:39:35 EDT 2003:
// used on page:313

function sumFields(f) {
 var stop = f.elements.length;
 if (stop > 200) stop = 200;
 var total = 0;
 var totalfield_name = f.totalfieldName.value;
 var totalfield = null;

 for (var i=0; i < stop; i++) {
    var input = f.elements[i];
    if (!input) continue;
    if (input.name.length > 6) continue;
    if (input.name.substring(0,4) != 'note') continue;

    if (input.name == totalfield_name) {
      totalfield = input;
      continue;
    }
    var val =  parseInt(input.value);
    if (!val) continue;
    total += val;
 }

 totalfield.value = total; 
 return false;
}


    var whitespace = " \t\n\r";
    
function isEmpty(s){  
    return ((s == null) || (s.length == 0));
}

function isWhitespace (s)    {  
    var i;
    
    if (isEmpty(s)) return true;
    
    for (i = 0 ; i < s.length ; i++)  {   
	var c = s.charAt(i);
	if (whitespace.indexOf(c) == -1) return false;
    }	
    return true;
}	




