Specifications
Chapter 19232
 back3FromStart = start-3;
 end = outStr.indexOf(’ #>’,start);
 equalSign = outStr.indexOf(’="<# if’,back3FromStart);
 attAndValue = (equalSign != -1)?false:true;
 trueStart = outStr.indexOf(’then’, start);
 falseStart = outStr.indexOf(’ else’, start);
 trueValue = outStr.substring(trueStart+5, falseStart);
 tokens = dreamweaver.getTokens(trueValue,’ ’);
 // If attAndValue is false, find out what attribute you’re
 // translating by backing up from the equal sign to the
 // first space. The substring between the space and the
 // equal sign is the attribute.
if (!attAndValue){
 for (var i=equalSign; i > 0; i--){
 if (outStr.charAt(i) == " "){
 attName = outStr.substring(i+1,equalSign);
 break;
 }
 }
 transValue = attName + ’="’ + trueValue + ’"’;
 transAtt = ' mmTranslatedValue' + count + '="' + ¬
 escape(transValue) + '"';
 outStr = outStr.substring(0,end+4) + transAtt + ¬
 outStr.substring(end+4);
 // If attAndValue is true, and tokens is greater than
 // 1, then trueValue is a series of attribute/value
 // pairs, not just one. In that case, each attribute/value
 // pair must be encoded separately and then added back
 // together to make the translated value.
 }else if (tokens.length > 1){
 transAtt = ' mmTranslatedValue' + count + '="'
 for (var j=0; j < tokens.length; j++){
 tokens[j] = escape(tokens[j]);
 if (j>0){
 spacer=" ";
 }
 transAtt += spacer + tokens[j]; 
 }
 transAtt += '"';
 outStr = outStr.substring(0,end+3) + transAtt + ¬
 outStr.substring(end+3)
 // If attAndValue is true and tokens is not greater
 // than 1, then trueValue is a single attribute/value pair.
 // This is the simplest case, where all that is necessary is
 // to encode trueValue.
 }else{
 transValue = trueValue;
 transAtt = ' mmTranslatedValue' + count + '="' + ¬
 escape(transValue) + '"';
 outStr = outStr.substring(0,end+3) + transAtt + ¬
 outStr.substring(end+3);
 }
 // Increment the counter so that the next instance
 // of mmTranslatedValue will have a unique name, and
 // then find the next <# conditional in the code.
 count++;
 start = outStr.indexOf('<# if',end);










