org.kuali.rice.krad.uif.util
Class ScriptUtils

java.lang.Object
  extended by org.kuali.rice.krad.uif.util.ScriptUtils

public class ScriptUtils
extends Object

Utility class for generating JavaScript

Author:
Kuali Rice Team (rice.collab@kuali.org)

Constructor Summary
ScriptUtils()
           
 
Method Summary
static String appendScript(String script, String appendScript)
          Will append the second script parameter to the first if the first is not empty, also checks to see if the first script needs an end semi-colon added
static String buildEventHandlerScript(String id, String eventName, String eventScript)
          Builds the JavaScript string for binding the given script to the component with the given id for the given event name (using jQuery)
static String buildFunctionCall(String functionName, Object... arguments)
          Helper method to build a JS string that will invoke the given function with the given arguments
static String convertStringListToJsArray(List<String> list)
          Converts a list of string to a valid js string array
static String convertToJsValue(Map<String,String> stringMap)
          Converts a map of string values to a json equivalent by converting the string values through the convertToJsValue(String) method; this will output a string representation of the map in json format
static String convertToJsValue(String value)
          Convert a string to a javascript value - especially for use for options used to initialize widgets such as the tree and rich table
static List<String> escapeHtml(List<String> strings)
          escape an array of strings
static String escapeHtml(String string)
          escapes a string using StringEscapeUtils.escapeHtml(String)
static String escapeJSONString(String jsonString)
          Escapes double quotes present in the given string
static String escapeName(String name)
          Escapes the ' character present in collection names so it can be properly used in js without causing javascript errors due to an early completion of a ' string.
static String toJSON(Map<String,String> map)
          Builds a JSON string form the given map
static String translateValue(Object value)
          Translates an Object to a String for representing the given Object as a JavaScript value
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ScriptUtils

public ScriptUtils()
Method Detail

translateValue

public static String translateValue(Object value)
Translates an Object to a String for representing the given Object as a JavaScript value

Handles null, List, Map, and Set collections, along with non quoting for numeric and boolean types. Complex types are treated as a String value using toString

Parameters:
value - Object instance to translate
Returns:
JS value

toJSON

public static String toJSON(Map<String,String> map)
Builds a JSON string form the given map

Parameters:
map - map to translate
Returns:
String in JSON format

escapeJSONString

public static String escapeJSONString(String jsonString)
Escapes double quotes present in the given string

Parameters:
jsonString - string to escape
Returns:
escaped string

convertToJsValue

public static String convertToJsValue(Map<String,String> stringMap)
Converts a map of string values to a json equivalent by converting the string values through the convertToJsValue(String) method; this will output a string representation of the map in json format

Parameters:
stringMap - the map of String values to convert to a simple json object representation
Returns:
the json object as a string (for use in js)

convertToJsValue

public static String convertToJsValue(String value)
Convert a string to a javascript value - especially for use for options used to initialize widgets such as the tree and rich table

Parameters:
value - the string to be converted
Returns:
the converted value

escapeName

public static String escapeName(String name)
Escapes the ' character present in collection names so it can be properly used in js without causing javascript errors due to an early completion of a ' string.

Parameters:
name - name to escape
Returns:
name, with single quotes escape

convertStringListToJsArray

public static String convertStringListToJsArray(List<String> list)
Converts a list of string to a valid js string array

Parameters:
list - list of Strings to be converted
Returns:
String representing the js array

escapeHtml

public static String escapeHtml(String string)
escapes a string using StringEscapeUtils.escapeHtml(String)

The apostrophe character is included as StringEscapeUtils#escapeHtml(String) does not consider it a legal entity.

Parameters:
string - the string to be escaped
Returns:
the escaped string - useful for embedding in server side generated JS scripts

escapeHtml

public static List<String> escapeHtml(List<String> strings)
escape an array of strings

Parameters:
strings - an array of strings to escape
Returns:
the array, with the strings escaped

appendScript

public static String appendScript(String script,
                                  String appendScript)
Will append the second script parameter to the first if the first is not empty, also checks to see if the first script needs an end semi-colon added

Parameters:
script - script that will be added to (null is allowed and converted to empty string)
appendScript - script to append
Returns:
String result of appending the two script parameters

buildFunctionCall

public static String buildFunctionCall(String functionName,
                                       Object... arguments)
Helper method to build a JS string that will invoke the given function with the given arguments

Parameters:
functionName - name of the JS function to invoke
arguments - zero or more arguments to pass, each will be converted to the corresponding JS type
Returns:
JS String for invoking the function

buildEventHandlerScript

public static String buildEventHandlerScript(String id,
                                             String eventName,
                                             String eventScript)
Builds the JavaScript string for binding the given script to the component with the given id for the given event name (using jQuery)

Parameters:
id - id of the element to handle the event for
eventName - name of the event the script will handle
eventScript - script to be executed when the event is thrown, if blank an empty string will be returned
Returns:
JS event handler script


Copyright © 2005–2014 The Kuali Foundation. All rights reserved.