chg: refactored global encode() method to JS
This commit is contained in:
		
							parent
							
								
									655f965084
								
							
						
					
					
						commit
						12f9e1b1e3
					
				
					 2 changed files with 41 additions and 12 deletions
				
			
		
							
								
								
									
										40
									
								
								js/Global/encode.js
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								js/Global/encode.js
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,40 @@
 | 
				
			||||||
 | 
					var encode = function (str, buffer, encodeNewline) {
 | 
				
			||||||
 | 
					  str = String(str);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  if (str === null || !str.length) return str;
 | 
				
			||||||
 | 
					  if (!buffer) buffer = [];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  for (var i = 0, len = str.length; i < len; i += 1) {
 | 
				
			||||||
 | 
					    var char = str.charAt(i);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    switch (char) {
 | 
				
			||||||
 | 
					      case '<':
 | 
				
			||||||
 | 
					      buffer.push('<');
 | 
				
			||||||
 | 
					      break;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      case '>':
 | 
				
			||||||
 | 
					      buffer.push('>');
 | 
				
			||||||
 | 
					      break;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      case '&':
 | 
				
			||||||
 | 
					      buffer.push('&');
 | 
				
			||||||
 | 
					      break;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      case '"':
 | 
				
			||||||
 | 
					      buffer.push('"');
 | 
				
			||||||
 | 
					      break;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      case '\n':
 | 
				
			||||||
 | 
					      if (encodeNewline) {
 | 
				
			||||||
 | 
					        buffer.push("<br class='helma-format' />");
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					      buffer.push('\n');
 | 
				
			||||||
 | 
					      break;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      default:
 | 
				
			||||||
 | 
					      buffer.push(char);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  return buffer.join('');
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
| 
						 | 
					@ -68,7 +68,7 @@ public class GlobalObject extends ImporterTopLevel implements PropertyRecorder {
 | 
				
			||||||
    public void init() {
 | 
					    public void init() {
 | 
				
			||||||
        String[] globalFuncs = {
 | 
					        String[] globalFuncs = {
 | 
				
			||||||
                                   "renderSkin", "renderSkinAsString", "getProperty",
 | 
					                                   "renderSkin", "renderSkinAsString", "getProperty",
 | 
				
			||||||
                                   "authenticate", "createSkin", "format", "encode",
 | 
					                                   "authenticate", "createSkin", "format",
 | 
				
			||||||
                                   "encodeXml", "encodeForm", "formatParagraphs",
 | 
					                                   "encodeXml", "encodeForm", "formatParagraphs",
 | 
				
			||||||
                                   "getXmlDocument", "getHtmlDocument", "seal",
 | 
					                                   "getXmlDocument", "getHtmlDocument", "seal",
 | 
				
			||||||
                                   "getDBConnection", "getURL", "write", "writeln",
 | 
					                                   "getDBConnection", "getURL", "write", "writeln",
 | 
				
			||||||
| 
						 | 
					@ -453,17 +453,6 @@ public class GlobalObject extends ImporterTopLevel implements PropertyRecorder {
 | 
				
			||||||
        return new NativeJavaObject(this, obj, null);
 | 
					        return new NativeJavaObject(this, obj, null);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     *
 | 
					 | 
				
			||||||
     *
 | 
					 | 
				
			||||||
     * @param obj ...
 | 
					 | 
				
			||||||
     *
 | 
					 | 
				
			||||||
     * @return ...
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    public String encode(Object obj) {
 | 
					 | 
				
			||||||
        return HtmlEncoder.encodeAll(toString(obj));
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     *
 | 
					     *
 | 
				
			||||||
     *
 | 
					     *
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue