var ie4;
var ns4;
var ws, comma;

var wsbox, cbox;
var newwin;

var attr, val;
var text;

if (navigator.appName == "Microsoft Internet Explorer")
   ie4 = true;
else // Navigator or Mozilla
   if (navigator.appName == "Mozilla" || navigator.appName == "Netscape")
      if (navigator.appVersion.indexOf("4.") == -1)
         ie4 = true;	// W3C Dom Compliant Browser - ns6
      else
         ns4 = true;

function start_convert(a){
   attr = a;
	val = eval("document.query." + a + ".value");
	newwin = window.open('/OQ/jss/wscconvert.html', 'Conversion_Tool', 'WIDTH=400,HEIGHT=650,resizable=yes,scrollbars');
   if(newwin.opener == null){
      newwin.opener= self;
   }
}

function init(){
   if(ns4){
	   wsbox = newwin.document.WSDATA.wsinput;
		if(val && !isblank(val)){
		   wsbox.value = val;
		}
		cbox = newwin.document.CDATA.coutput;
		}else{
		   wsbox = newwin.document.WSDATA.wsinput;
         if(val && !isblank(val)){
			   wsbox.value = val;
         }
			cbox = newwin.document.CDATA.coutput;
		}
}

//From Example 16-2, JavaScript - The Definitive Guide. O'Reilly, 3rd. Ed.
// by David Flanagan
function isblank(s){
   for(var i = 0; i < s.length; i++){
	   var c = s.charAt(i);
		if((c != ' ') && (c != '\n') && (c != '\t')) return false;
	}
	return true;
}

function remove_newline(s){
   var newtxt;
   for(var i = 0; i < s.length; i++) {
      var c = s.charAt(i);
      if(c == '\n'){
         s = s.slice(0, i-1) + ' ' + s.slice(i+1, s.length);
      }
   }
   return s.replace(/\s+/g, '');
}

function validate(){
   if(!isblank(wsbox.value)){
	   var tokens = wsbox.value.split(/\s+/);
		if(tokens.length > 1000){
         alert("Please enter less data at a time.");
         return false;
      }
      text = "";
		for(var i = 0; i < tokens.length; i++){
		   if(!isblank(tokens[i])){
			   text += tokens[i];
				if(i != tokens.length-1){
				   text += ",";
				}
			}
		}
		cbox.value = text;
		}else{
		   cbox.value = "";
			alert("Nothing to convert!");
		}
		return false;
}

function change_value(){
   if(!isblank(cbox.value)){
      var sendtxt;
      if(cbox.value.search(/\n/) != -1){
         sendtxt = remove_newline(cbox.value);
      }else{
         sendtxt = cbox.value;
      }
	   var retval = eval("document.query." + attr + ".value = \"" + sendtxt + "\"");
		 if(!retval){
		   alert("Value could not be updated.");
		}else{
         newwin.close();
      }
	}else{
	   alert("Value being entered is blank!");
	}
	return false;
}

