1490. EPMO Open Source Coordination Office Redaction File Detail Report

Produced by Araxis Merge on 1/2/2018 11:57:25 AM Eastern Standard Time. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a modern standards-compliant browser. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.

1490.1 Files compared

# Location File Last Modified
1 Tue Jan 2 16:57:25 2018 UTC
2 HTRE_P2.zip\src.zip\output\IHTA OLH Files.zip\ihta.zip whstub.js Fri Mar 24 20:39:28 2017 UTC

1490.2 Comparison summary

Description Between
Files 1 and 2
Text Blocks Lines
Unchanged 0 0
Changed 0 0
Inserted 1 245
Removed 0 0

1490.3 Comparison options

Whitespace
Character case Differences in character case are significant
Line endings Differences in line endings (CR and LF characters) are ignored
CR/LF characters Not shown in the comparison detail

1490.4 Active regular expressions

No regular expressions were active.

1490.5 Comparison detail

        1   //      We bHelp 5.10 .002
        2   window.whn ame = "wh_ stub";
        3   var gReply MsgQ = new  Object();
        4  
        5   function g etFrameHan dle(frames , framenam e) {
        6       var fr ame = null ;
        7       if (nu ll == fram es) return  null;
        8       if (ty peof (fram es[framena me]) != 'u ndefined'  && frames[ framename]  != null)
        9           re turn frame s[framenam e];
        10       for (v ar i = 0;  i < frames .length; i ++) {
        11           if  (frames[i ].frames.l ength > 0)  {
        12                frame =  getFrameHa ndle(frame s[i].frame s, framena me);
        13                if (null  != frame)
        14                    retu rn frame;
        15           }
        16       }
        17       return  frame;
        18   }
        19  
        20   function l istener(sN ame, oWind ow) {
        21       this.s Name = sNa me;
        22       this.o Window = o Window;
        23   }
        24  
        25   function M essageRout er() {
        26       this.m sgListener s = {};
        27  
        28       this.r egisterLis tener = fu nction(sWn dName, msg Id) {
        29           va r listener s = this.g etListener s(msgId);
        30           if  (typeof ( listeners)  == 'undef ined' || l isteners = = null)
        31                listener s = this.c reateListe ners(msgId );
        32  
        33           if  (listener s != null)  {
        34                for (var  i = 0; i  < listener s.length;  i++) {
        35                    if ( listeners[ i].sName = = sWndName )
        36                         return fal se;
        37                }
        38                var oLis tener = ne w listener (sWndName,  null);
        39                listener s[listener s.length]  = oListene r;
        40                return t rue;
        41           }
        42           el se
        43                return f alse;
        44       }
        45       this.r egisterLis tener2 = f unction(oW nd, msgId)  {
        46           va r listener s = this.g etListener s(msgId);
        47           if  (typeof ( listeners)  == 'undef ined' || l isteners = = null)
        48                listener s = this.c reateListe ners(msgId );
        49  
        50           if  (listener s != null)  {
        51                var oLis tener = ne w listener ("", oWnd) ;
        52                listener s[listener s.length]  = oListene r;
        53                return t rue;
        54           }
        55           el se
        56                return f alse;
        57       }
        58  
        59       this.u nregisterL istener =  function(s WndName, m sgId) {
        60           va r listener s = this.g etListener s(msgId);
        61           if  (listener s) {
        62                for (var  i = 0; i  < listener s.length;  i++) {
        63                    if ( listeners[ i].sName = = sWndName ) {
        64                         removeItem FromArray( listeners,  i);
        65                         return tru e;
        66                    }
        67                }
        68           }
        69           re turn false ;
        70       }
        71       this.u nregisterL istener2 =  function( oWnd, msgI d) {
        72           va r listener s = this.g etListener s(msgId);
        73           if  (listener s) {
        74                for (var  i = 0; i  < listener s.length;  i++) {
        75                    if ( listeners[ i].oWindow  == oWnd)  {
        76                         removeItem FromArray( listeners,  i);
        77                         return tru e;
        78                    }
        79                }
        80           }
        81           re turn false ;
        82       }
        83  
        84       this.n otify = fu nction(oMs g) {
        85           va r bDeliver ed = false ;
        86           va r listener s = this.g etListener s(oMsg.msg Id);
        87           if  (listener s) {
        88                for (var  i = 0; i  < listener s.length;  i++) {
        89                    if ( listeners[ i] != null ) {
        90                         var pFrame  = listene rs[i].oWin dow;
        91                         if (pFrame  == null)
        92                             pFrame  = getFram eHandle(fr ames, list eners[i].s Name);
        93                         if (null ! = pFrame)  {
        94                             if (th is.checkCh romeLocal( )) {
        95                                 bD elivered =  true;
        96                                 if  (pFrame = = window)
        97                                      pFrame.o nReceiveNo tification (oMsg);
        98                                 el se
        99                                      pFrame.p ostMessage (JSON.stri ngify(oMsg ), "*");
        100                             }
        101                             else i f (pFrame. onReceiveN otificatio n) {
        102                                 bD elivered =  true;
        103                                 pF rame.onRec eiveNotifi cation(oMs g);
        104                             }
        105                         }
        106                    }
        107                }
        108           }
        109           re turn bDeli vered;
        110       }
        111  
        112       this.r equest = f unction(oM sg, oSrcWn d) {
        113           va r bDeliver ed = false ;
        114           va r listener s = this.g etListener s(oMsg.msg Id);
        115           if  (listener s) {
        116                for (var  i = 0; i  < listener s.length;  i++) {
        117                    if ( listeners[ i] != null ) {
        118                         var pFrame  = listene rs[i].oWin dow;
        119                         if (pFrame  == null)
        120                             pFrame  = getFram eHandle(fr ames, list eners[i].s Name);
        121                         if (null ! = pFrame)  {
        122                             if (th is.checkCh romeLocal( )) {
        123                                 bD elivered =  true;
        124                                 va r sReplyId  = oMsg.sr cWndName;
        125                                 // sReplyId + = oMsg.msg Id.toStrin g();
        126                                 sR eplyId +=  oMsg.msgSe qNum.toStr ing();
        127                                 gR eplyMsgQ[s ReplyId] =  oSrcWnd;
        128                                 if  (pFrame = = window)  {
        129                                      if (!pFr ame.onRece iveRequest (oMsg))
        130                                          brea k;
        131                                 }
        132                                 el se
        133                                      pFrame.p ostMessage (JSON.stri ngify(oMsg ), "*");
        134                             }
        135                             else i f (pFrame. onReceiveR equest) {
        136                                 bD elivered =  true;
        137                                 if  (!pFrame. onReceiveR equest(oMs g))
        138                                      break;
        139                             }
        140                         }
        141                    }
        142                }
        143           }
        144           re turn bDeli vered;
        145       }
        146  
        147       this.r eply = fun ction(oMsg ) {
        148           if  (this.che ckChromeLo cal()) {
        149                oMsg.msg Type = "re ply";
        150                var sRep lyId = oMs g.srcWndNa me;
        151                sReplyId  += oMsg.m sgSeqNum.t oString();
        152                var oWnd  = gReplyM sgQ[sReply Id];
        153                if (oWnd ) {
        154                    oWnd .postMessa ge(JSON.st ringify(oM sg), "*");
        155                }
        156                else {
        157                    aler t("Excepti on: reply  for which  no request  exist");
        158                }
        159                // delet e gReplyMs gQ[sReplyI d];
        160           }
        161       }
        162  
        163  
        164       this.i nit = func tion() {
        165           if  (this.che ckChromeLo cal()) {
        166                window.a ddEventLis tener("mes sage", onR eceiveMsg,  false);
        167           }
        168       }
        169  
        170       //Help er Functio ns
        171       this.g etListener s = functi on(nMessag eId) {
        172           re turn this. msgListene rs[nMessag eId];
        173       }
        174  
        175       this.c reateListe ners = fun ction(nMes sageId) {
        176           th is.msgList eners[nMes sageId] =  new Array( );
        177           re turn this. msgListene rs[nMessag eId];
        178       }
        179  
        180       this.c heckChrome Local = fu nction() {
        181           if  (window.c hrome)
        182                if (docu ment.locat ion.protoc ol.substri ng(0, 4) = = "file")
        183                return t rue;
        184           re turn false ;
        185       }
        186   }
        187  
        188   function o nReceiveMs g(event) {
        189  
        190           va r oMsg = J SON.parse( event.data );
        191       switch  (oMsg.msg Type) {
        192           ca se "regist er":
        193                if (oMsg .iParam)
        194                    msgR outer.regi sterListen er(oMsg.iP aram, oMsg .msgId);
        195                else
        196                    msgR outer.regi sterListen er2(event. source, oM sg.msgId);
        197                break;
        198           ca se "unregi ster":
        199                if (oMsg .iParam)
        200                    msgR outer.unre gisterList ener(oMsg. iParam, oM sg.msgId);
        201                else
        202                    msgR outer.unre gisterList ener2(even t.source,  oMsg.msgId );
        203                break;
        204           ca se "notify ":
        205                msgRoute r.notify(o Msg);
        206                break;
        207           ca se "reques t":
        208                msgRoute r.request( oMsg, even t.source);
        209                break;
        210           ca se "reply" :
        211                msgRoute r.reply(oM sg);
        212                break;
        213       }
        214   }
        215  
        216   var msgRou ter = new  MessageRou ter();
        217   msgRouter. init();
        218  
        219   function r egisterLis tener(fram eName, msg Id) {
        220       msgRou ter.regist erListener (frameName , msgId);
        221   }
        222  
        223   function r egisterLis tener2(oWn d, msgId)  {
        224       msgRou ter.regist erListener 2(oWnd, ms gId);
        225   }
        226  
        227   function u nregisterL istener(fr ameName, m sgId) {
        228       msgRou ter.unregi sterListen er(frameNa me, msgId) ;
        229   }
        230  
        231   function u nregisterL istener2(o Wnd, msgId ) {
        232       msgRou ter.unregi sterListen er2(oWnd,  msgId);
        233   }
        234  
        235   function n otify(oMsg ) {
        236       msgRou ter.notify (oMsg);
        237   }
        238  
        239   function r equest(oMs g) {
        240       msgRou ter.reques t(oMsg, nu ll);
        241   }
        242  
        243   function r eply(oMsg)  {
        244       msgRou ter.reply( oMsg);
        245   }