XMLUtils.js 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. /*
  2. *+------------------------------------------------------------------------+
  3. *| Licensed Materials - Property of IBM
  4. *| IBM Cognos Products: Viewer
  5. *| (C) Copyright IBM Corp. 2001, 2011
  6. *|
  7. *| US Government Users Restricted Rights - Use, duplication or
  8. *| disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  9. *|
  10. *+------------------------------------------------------------------------+
  11. */
  12. //take an input string and convert it into
  13. //xml friendly entity references
  14. function sXmlEncode(sInputString)
  15. {
  16. var sOutputString = "" + sInputString;
  17. if ((sOutputString == '0') || ((sInputString != null) && (sInputString != false)))
  18. {
  19. //&
  20. sOutputString = sOutputString.replace(/&/g, "&");
  21. //<
  22. sOutputString = sOutputString.replace(/</g, "&lt;");
  23. //&gt;
  24. sOutputString = sOutputString.replace(/>/g, "&gt;");
  25. //&quot;
  26. sOutputString = sOutputString.replace(/"/g, "&quot;");
  27. //&apos;
  28. sOutputString = sOutputString.replace(/'/g, "&apos;");
  29. }
  30. else if (sInputString == null)
  31. {
  32. //return empty string if the value is null or false
  33. sOutputString = "";
  34. }
  35. return sOutputString;
  36. }
  37. //take an xml friendly string and convert it into
  38. //a js friendly string
  39. function sXmlDecodeParser(sAll, sGroup1)
  40. {
  41. var sRetval = sAll;
  42. switch(sGroup1)
  43. {
  44. case 'amp': sRetval = '&'; break;
  45. case 'lt': sRetval = '<'; break;
  46. case 'gt': sRetval = '>'; break;
  47. case 'quot': sRetval = '"'; break;
  48. case 'apos': sRetval = "'"; break;
  49. }
  50. return sRetval;
  51. }
  52. function sXmlDecode(sInputString)
  53. {
  54. var sOutputString = "" + sInputString;
  55. if ((sOutputString == '0') || ((sInputString != null) && (sInputString != false)))
  56. {
  57. sOutputString = sOutputString.replace(/&(amp|lt|gt|quot|apos);/g, sXmlDecodeParser);
  58. }
  59. else if (sInputString == null)
  60. {
  61. //return empty string if the value is null or false
  62. sOutputString = "";
  63. }
  64. return sOutputString;
  65. }