var editing = "0";
var futileClickCount = 0;
var futileClickMsgCount = 0;


/* ############ */

$(document).ready(function(){
	$(function() {
		$("#sources").load("/inc/dyn/source_list.php");

	});
});



function qlptmox() {
	alert('qlptmox');
}

/* ############ */

function aToggle (which) {
	if (document.getElementById(which).className=='show') {
		document.getElementById(which).className='hide';
	} else {
		document.getElementById(which).className='show';
	}
	return false;
}

function futileClick() {
 if (futileClickCount > 5) {
  var futileMsg = "Click 'Cancel' or 'Enter' in the current word dialog to access other words or functions.";
  alert(futileMsg);
  futileClickMsgCount++;
 }
 futileClickCount++;
}

function getY( oElement )
{
var iReturnValue = 0;
while( oElement != null ) {
iReturnValue += oElement.offsetTop;
oElement = oElement.offsetParent;
}
return iReturnValue;
}

function getX( oElement )
{
var iReturnValue = 0;
while( oElement != null ) {
iReturnValue += oElement.offsetLeft;
oElement = oElement.offsetParent;
}
 return iReturnValue;
}

function hide(obj) {
 document.getElementById(obj).className='hide';
}
function show(obj) {
 document.getElementById(obj).className='show';
}

function getSelectIndexFromVal(ddId, ddVal) {
 var ddIndex = 0;
 for (var i = 0; i<document.getElementById(ddId).options.length; i++) {
  if (ddVal == document.myfloatform[ddId].options[i].value) {ddIndex = i;}
 }
 return ddIndex;
}

function wordValidate(word) { ///make or bail
 if (word == "") {
 return false;
 } else {
  return true;
 }
}

function w (obj) {
 if (editing == "0") {
  var idnum = obj.id.substring(2);
  editing = idnum;
  var stfield = "st-" + editing;
  var wfield = "w-" + editing;
  var dfield = "d-" + editing;
  var pfield = "ps-" + editing;
  var sfield = "sc-" + editing;
  var repVal = document.getElementById(dfield).value;
  var dispVal = document.getElementById(wfield).innerHTML;
  var randStateClass = document.getElementById(stfield).value;
  if (document.getElementById(stfield).value == "x") {
   document.myfloatform.randomize.checked = true;
  } else {
   document.myfloatform.randomize.checked = false;
  }
  if (repVal != dispVal) { //dont show the dfield value in the replacew box if the shown word doesn't match it
   repVal = "";
  }
  // document.myfloatform.partofspeech.options[getSelectIndexFromVal('partofspeech', document.getElementById(pfield).value)].selected = true;
  document.getElementById('partofspeech').selectedIndex = getSelectIndexFromVal('partofspeech', document.getElementById(pfield).value);
  document.getElementById('syllables').selectedIndex = getSelectIndexFromVal('syllables', document.getElementById(sfield).value);
  document.getElementById('replacew').value = repVal;
  document.getElementById('myform').className="e";
  document.getElementById(obj.id).className='on';
  obj.blur();
  //showMenu(obj);
  document.getElementById('myfloatform').className = randStateClass;
  var x = getX(obj);
  var x = x + "px";
  var y = getY(obj);
  var y = (y+18) + "px";
  document.getElementById('w-menu').style.left=x;
  document.getElementById('w-menu').style.top=y;
  document.getElementById('w-menu').className='show';
  if (randStateClass != 'u') {
   document.myfloatform.randomize.focus();
  }
 } else {
  futileClick();
 }
 return false;
}

function wc(action) { ///make or bail
 var stfield = "st-" + editing;
 var wfield = "w-" + editing;
 var randStateClass = document.getElementById(stfield).value;
 if (action == "make") {
  var dfield = "d-" + editing;
  var pfield = "ps-" + editing;
  var sfield = "sc-" + editing;
  var dWordOLD = document.getElementById(dfield).value;
  var dPosOLD = document.getElementById(pfield).value;
  var dSylOLD = document.getElementById(sfield).value;
  var dWordIN = document.getElementById('replacew').value;
  var dPosIN = document.myfloatform.partofspeech.value;
  var dSylIN = document.myfloatform.syllables.value;
  var replacedWord = 0;
  var posOrSylChange = 1;
  var randomizeWord = 1;
  if (dWordOLD != dWordIN && wordValidate(dWordIN)) { //replace word
   document.getElementById(dfield).value = dWordIN;
   wRepText = dWordIN;
   replacedWord = 1;
   randStateClass = "r";
  } else {
   wRepText = dWordOLD;
  }
  if (dPosIN != dPosOLD && replacedWord == 0) { //change part of speech
   document.getElementById(pfield).value = dPosIN;
   var wRepText = "*" + dSylIN + "s  " + dPosIN;
   posOrSylChange = 0;
  }  
  if (dSylIN != dSylOLD && replacedWord == 0) { //change syllable count
   document.getElementById(sfield).value = dSylIN;
   var wRepText = "*" + dSylIN + "s  " + dPosIN;
   posOrSylChange = 0;
  }  
  if(document.myfloatform.randomize.checked && replacedWord == 0 && posOrSylChange == 1) { //randomize word 
   randStateClass = "x";
   randomizeWord = 0;
  } else if (document.myfloatform.randomize.checked === false && replacedWord == 0 && posOrSylChange == 1) { //randomize switched off
   randStateClass = "s";
   randomizeWord = 1;
  } else if (posOrSylChange == 0 && replacedWord == 0) {
   randStateClass = "c";
  }
 document.getElementById(wfield).innerHTML = wRepText;
 // if (replacedWord && posOrSylChange && randomizeWord) {}
 }
 document.myfloatform.reset();
 document.getElementById('w-menu').className='hide';
 document.getElementById('myform').className="f";
 document.getElementById('myfloatform').className = "s";
 document.getElementById(wfield).className = randStateClass;
 document.getElementById(stfield).value = randStateClass;
 editing = 0;
}
