--- /dev/null
+# Standard javascript indexOf. Implemented here because not all browsers support it.
+_indexOf = (array, item) ->
+ for value, i in array
+ if value == item
+ return i
+ return -1
+
+indexOf = (array, item) ->
+ if array.indexOf
+ # The browser supports indexOf
+ return array.indexOf(item)
+ else
+ # Do our own indexOf
+ return _indexOf(array, item)
+
+isInt = (n) ->
+ return typeof n is 'number' and n % 1 == 0
+
+
+isFunction = (v) ->
+ return typeof v == 'function'
+
+
+# Escape a string for HTML interpolation; copied from underscore js
+html_escape = (string) ->
+ return (''+string)
+ .replace(/&/g, '&')
+ .replace(/</g, '<')
+ .replace(/>/g, '>')
+ .replace(/"/g, '"')
+ .replace(/'/g, ''')
+ .replace(/\//g,'/')
+
+
+getBoolString = (value) ->
+ if value
+ return 'true'
+ else
+ return 'false'
+
+
+module.exports =
+ _indexOf: _indexOf
+ getBoolString: getBoolString
+ html_escape: html_escape
+ indexOf: indexOf
+ isInt: isInt
+ isFunction: isFunction