code: function processObject(oObject, fnCallback) {
  		for (var sKey in oObject) {
  			if (!oObject.hasOwnProperty(sKey)) {
  				continue;
  			}
  			var vValue = oObject[sKey];
  			switch (typeof vValue) {
  				case "object":
  					// ignore null objects
  					if (vValue) {
  						processObject(vValue, fnCallback);
  					}
  					break;
  				case "string":
  						fnCallback(oObject, sKey, vValue);
  						break;
  				default:
  					// do nothing in case of other types
  			}
  		}
  	}
docs: Utility function to process strings in an object/array recursively
  
  @param {object/Array} oObject Object or array that will be processed
  @param {function} fnCallback function(oObject, sKey, sValue) to call for all strings. Use "oObject[sKey] = X" to change the value.