1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- // Licensed Materials - Property of IBM
- //
- // IBM Cognos Products: pps
- //
- // (C) Copyright IBM Corp. 2005, 2017
- //
- // US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
- // Message Utilities
- function CMsgUtil() {};
- // perform message substitution
- // message text contains %x where x defines the parameter number to be substituted
- CMsgUtil.SubstituteMessage = function (msgText, parm0, parm1, parm2, parm3, parm4, parm5, parm6)
- {
- // build parameter array
- var parmArray = new Array();
- for (var i = 0; i < 7; ++i) {
- var parmName = 'parm' + i;
- if (typeof eval(parmName) != 'undefined') {
- parmArray[i] = eval('parm' + i);
- }
- }
- // break the message up into pre-insertion parts
- // split for '%' followed by a single digit
- // store the substring and message parm index
- var msgParts = new Array();
- var parmRegExp = /%\d\b/;
- var testText = msgText;
- var splice = testText.match(parmRegExp);
- var idx = 0;
- while (splice != null) {
- msgParts[idx] = new Object();
- msgParts[idx].value = testText.substring(0, splice.index);
- msgParts[idx].msgNum = parseInt(splice[0].charAt(1));
- testText = testText.substring(splice.index + splice[0].length);
- splice = testText.match(parmRegExp);
- ++idx;
- }
- var last = new Object();
- last.value = testText;
- last.msgNum = 999; // choose invalid index for last string
- msgParts[msgParts.length] = last;
- // now generate result message
- var _result = "";
- for (var i = 0; i < msgParts.length; ++i) {
- _result += msgParts[i].value;
- if (msgParts[i].msgNum < parmArray.length) {
- _result += parmArray[msgParts[i].msgNum];
- }
- }
- return _result;
- }
|