/* ======================================================================
rewriteDer.js
DESC: rewrites a sentnece or justification(?) of PL from unshifted keyboard to normal
	also adds parens for quantifiers and adds spaces (see function at end)
PLATFORMS: 

USAGE NOTES: 
====================================================================== */

/* ======================================================================
FUNCTION: 	

INPUT:		
				
RETURNS:		

DESC:							
====================================================================== */
function rewritePLder(value) {
if (document.f && value.length<3 && ('' + parseInt(value) == value) && document.f.elements[value]) return document.f.elements[value].value + ' ??'
else {
for ( var i=0; i<value.length; i++ ) {
		valu =value.charAt(i)
   	if ( valu == 'V' ) {
   		value = value.substring(0,i) + '^' + value.substring(i+1); valu = '^'
		} 
	else if ( valu == '3' ) {
   		value = value.substring(0,i) + '%' + value.substring(i+1); valu = '%'
		}
   	else if ( valu == '7' ) {
   		value = value.substring(0,i) + '&' + value.substring(i+1); valu = '&'
		}
   	else if ( valu == '`' ) {
   		value = value.substring(0,i) + '~' + value.substring(i+1)
		}
   	else if ( valu == '.' ) {
   		value = value.substring(0,i) + '>' + value.substring(i+1); valu = '>'
		}
   	else if ( valu == '9' ) {
   		value = value.substring(0,i) + '(' + value.substring(i+1)
		}
   	else if ( valu == '0' ) {
   		value = value.substring(0,i) + ')' + value.substring(i+1)
		}
   	else if ( valu == '5' ) {
   		value = value.substring(0,i) + '%' + value.substring(i+1)
		}
   	else if ( valu == '6' ) {
   		value = value.substring(0,i) + '^' + value.substring(i+1)
		}
		if ( (value.charAt(i) == '^' || value.charAt(i) == '%') && ( value.charAt(i+2) != ')' && value.charAt(i+2) != '0') ) {
   		value = value.substring(0,i) + '(' + valu + value.charAt(i+1) + ')' + value.substring(i+2)
		}}
return value
} 
}

// here's a function for adding spaces around 'v' for display:

function displaySpace(value) {
	if (document.cookie.indexOf('fontSTARTno')>-1) value = rewriteNoLogicFont(value)
 for ( var i=0; i<value.length; i++ ) {
   	if ( value.charAt(i)=='v'  ) {
   		value = value.substring(0,i) + ' v '  + value.substring(i+1); i+=2
	   }
 }
return value
}

function rewriteNoLogicFont(s) { // rewrites output for computers without the Logic Font.
for ( var i=0; i<s.length; i++ ) {
	var valu = s.charAt(i)
   	if ( valu == '%' ) {
   		s = s.substring(0,i) + '3' + s.substring(i+1)
		}   	
	else if ( valu == '^' ) {
   		s = s.substring(0,i) + 'V' + s.substring(i+1)
		}
	}
return s
}

function rewriteNoLogicFontJust(s) { // rewrites output IN JUSTIFICATION FIELD for computers without the Logic Font.
var i = s.length-2
	var valu = s.charAt(i)
   	if ( valu == '%' ) {
   		s = s.substring(0,i) + '3' + s.substring(i+1)
		}   	
	else if ( valu == '^' ) {
   		s = s.substring(0,i) + 'V' + s.substring(i+1)
		}
return s
}

function rewriteToLogic(s) { // rewrites GOAL for computers without the Logic Font. E.g., goal = '(Vx)Px' goes to '(^x)Px'.
for ( var i=0; i<s.length; i++ ) {
	var valu = s.charAt(i)
   	if ( valu == '3' ) {
   		s = s.substring(0,i) + '%' + s.substring(i+1)
		}   	
	else if ( valu == 'V' ) {
   		s = s.substring(0,i) + '^' + s.substring(i+1)
		}
	}
return s
}
