338. EPMO Open Source Coordination Office Redaction File Detail Report

Produced by Araxis Merge on 5/9/2017 12:03:03 PM Eastern Daylight 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.

338.1 Files compared

# Location File Last Modified
1 Tue May 9 16:03:03 2017 UTC
2 OSCIF_HEC_v1.4_Sprint23_build4_Apr_2017.zip\CRM_solutions\Managed\North52BPA_1_0_0_506_managed_2013_2015_2016..zip\WebResources north52_javascriptnorth52formulahelperC4B5F01C-4DB5-E011-B37A-00155DF5B00D Mon Sep 19 18:20:18 2016 UTC

338.2 Comparison summary

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

338.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

338.4 Active regular expressions

No regular expressions were active.

338.5 Comparison detail

        1   //If the S DK namespa ce object  is not def ined, crea te it.
        2   if (typeof  (N52) ==  "undefined ")
        3   { N52 = {} ; }
        4   // Create  Namespace  container  for functi ons in thi s library;
        5   N52.Helper s = {
        6  
        7   GetServerU rl: functi on()
        8   {
        9       var co ntext, crm ServerUrl;   
        10       if (ty peof GetGl obalContex t != "unde fined") {   
        11           co ntext = Ge tGlobalCon text();  
        12       }  
        13       else i f (typeof  Xrm != "un defined")  {  
        14           co ntext = Xr m.Page.con text;  
        15       }  
        16       else {   
        17           th row new Er ror("CRM c ontext is  not availa ble.");  
        18       }  
        19     
        20  
        21     
        22       if (ty peof conte xt.getClie ntUrl != " undefined"
        23       {
        24          crm ServerUrl  = context. getClientU rl();
        25       }
        26       else
        27       {
        28            c rmServerUr l = contex t.getServe rUrl();  
        29            c rmServerUr l = crmSer verUrl.rep lace(/^(ht tp|https): \/\/([_a-z A-Z0-9\-\. ]+)(:([0-9 ]{1,5}))?/ , window.l ocation.pr otocol + " //" + wind ow.locatio n.host);  
        30            c rmServerUr l = crmSer verUrl.rep lace(/\/$/ , ""); //  remove tra iling slas h if any  
        31        }
        32     
        33       return  crmServer Url; 
        34   },
        35  
        36   SearchTrac eLog: func tion()
        37   {   
        38      var fin alUrl = N5 2.Helpers. GetServerU rl() + '/a dvancedfin d/advfind. aspx?etn=n orth52_tra ce';
        39      window. open(final Url);
        40   },
        41  
        42   openFormul aView: fun ction() 
        43  
        44  
        45   window.ope n(N52.Help ers.GetSer verUrl() +  "/main.as px?etn=nor th52_formu la&pagetyp e=entityli st");
        46   },
        47  
        48   openXCache View: func tion() 
        49  
        50  
        51   window.ope n(N52.Help ers.GetSer verUrl() +  "/main.as px?etn=nor th52_xcach e&pagetype =entitylis t");
        52   },
        53  
        54  
        55   doNothing:  function(
        56  
        57  
        58   return fal se;
        59   },
        60  
        61   openGenieV iew: funct ion() 
        62  
        63  
        64   window.ope n(N52.Help ers.GetSer verUrl() +  "/main.as px?etn=nor th52_formu la&extraqs =%3fpagemo de%3difram e%26sitema ppath%3dSe ttings%257 cNorth52%2 57cnorth52 _formula&p agetype=en titylist&v iewid=%7b0 8B5937B-7D 36-E311-89 F7-00155DF 5B00D%7d&v iewtype=10 39");
        65   },
        66  
        67   openSmartF lowView: f unction() 
        68  
        69  
        70   window.ope n(N52.Help ers.GetSer verUrl() +  "/main.as px?etn=nor th52_formu la&extraqs =%3fpagemo de%3difram e%26sitema ppath%3dSe ttings%257 cNorth52%2 57cnorth52 _formula&p agetype=en titylist&v iewid=%7bF B1F9BAE-5F 57-E211-8F 46-00155DF 5B00D%7d&v iewtype=10 39");
        71   },
        72  
        73  
        74   openSchedu leView: fu nction() 
        75  
        76  
        77   window.ope n(N52.Help ers.GetSer verUrl() +  "/main.as px?etn=nor th52_sched ule&pagety pe=entityl ist");
        78   },
        79  
        80   openFormul a: functio n(formulaT ype) 
        81  
        82  
        83   var param  ="north52_ formulatyp e=" +  for mulaType;
        84  
        85   var params Local = {} ;
        86   paramsLoca l["north52 _formulaty pe"] = for mulaType;
        87  
        88   Xrm.Utilit y.openEnti tyForm("no rth52_form ula", null , paramsLo cal);
        89  
        90  
        91   },
        92  
        93  
        94  
        95   openXCache : function ()
        96  
        97  
        98   Xrm.Utilit y.openEnti tyForm("no rth52_xcac he", null,  null);
        99  
        100   },
        101  
        102  
        103   openSchedu le: functi on(schedul eType)
        104  
        105  
        106   var param  ="north52_ schedulety pe=" +  sc heduleType ;
        107  
        108   var params Local = {} ;
        109   paramsLoca l["north52 _schedulet ype"] = sc heduleType ;
        110  
        111   Xrm.Utilit y.openEnti tyForm("no rth52_sche dule", nul l, paramsL ocal);
        112  
        113   },
        114  
        115   GetConfigu rationId:  function()
        116   {
        117        OData Path = N52 .Helpers.G etServerUr l() + "/XR MServices/ 2011/Organ izationDat a.svc";
        118  
        119        var r etrieveRec ordsReq =  new XMLHtt pRequest() ;
        120        var c onfigurati onId = nul l;        
        121  
        122        retri eveRecords Req.open(' GET', ODat aPath+"/no rth52_conf igurationS et",false) ;
        123        retri eveRecords Req.setReq uestHeader ("Accept",  "applicat ion/json") ;
        124        retri eveRecords Req.setReq uestHeader ("Content- Type", "ap plication/ json; char set=utf-8" );
        125        retri eveRecords Req.send() ;
        126  
        127        var n 52config =   JSON.par se(retriev eRecordsRe q.response Text).d.re sults;
        128        
        129        if (n 52config[0 ] == null)  {
        130                 alert(" The North5 2 configur ation reco rd could n ot be foun d. This is  probably  because yo u have not  yet accep ted the li cense. Ple ase naviga te to the  North52 So lution, cl ick on the  Informati on link &  then accep t the lice nse which  will creat e the conf iguration  record. ") ;
        131         }
        132         else  {
        133                         configurat ionId= n52 config[0]. north52_co nfiguratio nId;
        134                  }
        135      return  configurat ionId;
        136   },
        137  
        138   CallComman dPublish:  function ( )
        139     {
        140                
        141     if ( nav igator.use rAgent.sea rch('iPad' ) > 0)
        142          ale rt("North5 2 Formula  Manager: F eature not  supported  on this d evice.");
        143      else
        144      {
        145         var  recordid =  Xrm.Page. data.entit y.getId();
        146         var  sourceenti tyname = X rm.Page.ge tAttribute ("north52_ sourceenti tyname").g etValue();
        147         var  finalUrl =  N52.Helpe rs.GetServ erUrl() +  '/WebResou rces/north 52_html_pu blishformu la?id=' +r ecordid +  '&data=' +  sourceent ityname;
        148  
        149          if  ( (navigat or.userAge nt.search( 'MSIE') >  0) || (nav igator.use rAgent.sea rch('Tride nt/') > 0)  )
        150                 window. showModalD ialog(fina lUrl, self , 'dialogW idth: 400p x;dialogHe ight:200px ');    
        151           el se
        152                   windo w.open(fin alUrl, '_b lank', 'to p=300, lef t=300, wid th=400, he ight=200') ;     
        153  
        154          
        155       }
        156    },
        157  
        158   CallComman dNewFormul aDetail: f unction ()
        159     {
        160       
        161        var f ormulaID =  Xrm.Page. data.entit y.getId();
        162        var f ormulaName  = Xrm.Pag e.getAttri bute("nort h52_name") .getValue( );
        163  
        164        var e xtraqs  =  "north52_f ormula_nor th52_formu ladetail_i d=" + form ulaID;
        165        extra qs  += "&n orth52_for mula_north 52_formula detail_idn ame=" + fo rmulaName  ;
        166      
        167        var f eatures =  "location= no,menubar =no,status =no,toolba r=no";
        168  
        169        windo w.open("ma in.aspx?et n=north52_ formuladet ail&pagety pe=entityr ecord&extr aqs=" + en codeURICom ponent(ext raqs), "_b lank", fea tures, fal se);
        170    },
        171  
        172   CallComman dTestFormu la: functi on ()
        173     {
        174  
        175         var  recordid =  Xrm.Page. data.entit y.getId();
        176         var  formulaNam e = Xrm.Pa ge.getAttr ibute("nor th52_name" ).getValue ();
        177         var  finalUrl =  N52.Helpe rs.GetServ erUrl() +  '/WebResou rces/north 52_html_fo rmula_test er?id=' +r ecordid +  '&data=' +  formulaNa me;
        178  
        179              if ( (navi gator.user Agent.sear ch('MSIE')  > 0) || ( navigator. userAgent. search('Tr ident/') >  0) )
        180                   windo w.showModa lDialog(fi nalUrl, se lf, 'dialo gWidth: 55 0px;dialog Height:425 px');
        181           el se
        182                   windo w.open(fin alUrl, '_b lank', 'to p=300, lef t=300, wid th=550, he ight=425') ;     
        183  
        184        },
        185  
        186   OpenConfig uration: f unction()
        187   {
        188      var con figuration Id = N52.H elpers.Get Configurat ionId();
        189         if ( configurat ionId != n ull)             
        190         {
        191              var server UrlFinal =  N52.Helpe rs.GetServ erUrl() +  '/main.asp x?etn=nort h52_config uration&pa getype=ent ityrecord& id=' + '%7 B'+ config urationId+ '%7D'
        192  
        193              window.ope n(serverUr lFinal);
        194          }
        195  
        196   },
        197  
        198   OpenConfig urationUti lity: func tion()
        199   {
        200      var con figuration Id = N52.H elpers.Get Configurat ionId();
        201         if ( configurat ionId != n ull)             
        202         {
        203              Xrm.Utilit y.openEnti tyForm('no rth52_conf iguration' , configur ationId ,  null);
        204             
        205          }
        206  
        207   },
        208  
        209  
        210   CallSuppor t: functio n()
        211   {
        212    
        213      if(wind ow.UserVoi ce)
        214              return win dow.UserVo ice.showPo pupWidget( );
        215       else
        216       { 
        217  
        218         var  protocolty pe = 'http s:' == doc ument.loca tion.proto col ? 'htt ps://' : ' http://';
        219         var  scriptsrc  = protocol type  + 'w idget.user voice.com/ VV5Js1PsQK Fcgv9gm7hz g.js';
        220         var  head = doc ument.getE lementsByT agName('he ad')[0];
        221         var  script = d ocument.cr eateElemen t('script' );
        222         scri pt.type =  "text/java script";
        223         scri pt.src = s criptsrc ;
        224         head .appendChi ld(script) ;
        225  
        226        windo w.UserVoic e.showPopu pWidget();
        227       }
        228  
        229   },
        230     
        231   CallComman dCloneForm ula: funct ion(comman d, recordi d)
        232   {
        233  
        234   try{
        235           
        236       if ( n avigator.u serAgent.s earch('iPa d') > 0)
        237          ale rt("North5 2 Formula  Manager: F eature not  supported  on this d evice.");
        238       else i f (recordi d == null)  {
        239               alert('No rth52 Form ula Manage r : Please  select a  Formula to  clone.');
        240       }
        241       else
        242       {
        243          var  finalUrl  = N52.Help ers.GetSer verUrl() +  '/WebReso urces/nort h52_html_c lone_formu la?id=' +r ecordid +  '&data=' +  command;
        244       
        245              if ( (navi gator.user Agent.sear ch('MSIE')  > 0) || ( navigator. userAgent. search('Tr ident/') >  0) )
        246                  window .showModal Dialog(fin alUrl, sel f, 'dialog Width: 400 px;dialogH eight:200p x');
        247           el se
        248                   windo w.open(fin alUrl, '_b lank', 'to p=300, lef t=300, wid th=400, he ight=200') ;
        249          
        250        }
        251       
        252    }
        253    catch (ex )
        254    {
        255      alert(' North52 Fo rmula Mana ger Error:  ' + ex.me ssage);
        256    }
        257  
        258   },
        259  
        260   PublishAll : function ()
        261   {
        262  
        263     try{
        264           
        265            v ar finalUr l = N52.He lpers.GetS erverUrl()  + '/WebRe sources/no rth52_html _deploy';
        266  
        267              if ( (navi gator.user Agent.sear ch('MSIE')  > 0) || ( navigator. userAgent. search('Tr ident/') >  0) )
        268                   windo w.showModa lDialog(fi nalUrl, se lf, 'dialo gWidth: 40 0px;dialog Height:200 px');
        269           el se
        270                   windo w.open(fin alUrl, '_b lank', 'to p=300, lef t=300, wid th=400, he ight=200') ;
        271          
        272        }
        273    catch (ex )
        274    {
        275      alert(' North52 Fo rmula Mana ger Error:  ' + ex.me ssage);
        276    }
        277  
        278   },
        279  
        280  
        281  
        282    insertAtC aret: func tion (elem entname,te xt)
        283    {                   
        284           va r element  = document .getElemen tById(elem entname);
        285           if  (document .selection ) {
        286           el ement.focu s();
        287           va r sel = do cument.sel ection.cre ateRange() ;
        288           se l.text = t ext;
        289           el ement.focu s();
        290       } else  if (eleme nt.selecti onStart ||  element.s electionSt art === 0)  {
        291           va r startPos  = element .selection Start;
        292           va r endPos =  element.s electionEn d;
        293           va r scrollTo p = elemen t.scrollTo p;
        294           el ement.valu e = elemen t.value.su bstring(0,  startPos)  + text +  element.va lue.substr ing(endPos , element. value.leng th);
        295           el ement.focu s();
        296           el ement.sele ctionStart  = startPo s + text.l ength;
        297           el ement.sele ctionEnd =  startPos  + text.len gth;
        298           el ement.scro llTop = sc rollTop;
        299       } else  {
        300           el ement.valu e += text;
        301           el ement.focu s();
        302       }
        303     },
        304  
        305  
        306    showHelp:  function  ()
        307    {                   
        308           al ert('North 52 Formula  Manager:  Online hel p coming s oon...');
        309     }
        310  
        311   }
        312  
        313   if (!this. JSON) { th is.JSON =  {}; } (fun ction () {  function  f(n) { ret urn n < 10  ? '0' + n  : n; } if  (typeof D ate.protot ype.toJSON  !== 'func tion') { D ate.protot ype.toJSON  = functio n (key) {  return isF inite(this .valueOf() ) ? this.g etUTCFullY ear() + '- ' + f(this .getUTCMon th() + 1)  + '-' + f( this.getUT CDate()) +  'T' + f(t his.getUTC Hours()) +  ':' + f(t his.getUTC Minutes())  + ':' + f (this.getU TCSeconds( )) + 'Z' :  null; };  String.pro totype.toJ SON = Numb er.prototy pe.toJSON  = Boolean. prototype. toJSON = f unction (k ey) { retu rn this.va lueOf(); } ; } var cx  = /[\u000 0\u00ad\u0 600-\u0604 \u070f\u17 b4\u17b5\u 200c-\u200 f\u2028-\u 202f\u2060 -\u206f\uf eff\ufff0- \uffff]/g,  escapable  = /[\\\"\ x00-\x1f\x 7f-\x9f\u0 0ad\u0600- \u0604\u07 0f\u17b4\u 17b5\u200c -\u200f\u2 028-\u202f \u2060-\u2 06f\ufeff\ ufff0-\uff ff]/g, gap , indent,  meta = { ' \b': '\\b' , '\t': '\ \t', '\n':  '\\n', '\ f': '\\f',  '\r': '\\ r', '"': ' \\"', '\\' : '\\\\' } , rep; fun ction quot e(string)  { escapabl e.lastInde x = 0; ret urn escapa ble.test(s tring) ? ' "' + strin g.replace( escapable,  function  (a) { var  c = meta[a ]; return  typeof c = == 'string ' ? c : '\ \u' + ('00 00' + a.ch arCodeAt(0 ).toString (16)).slic e(-4); })  + '"' : '" ' + string  + '"'; }  function s tr(key, ho lder) { va r i, k, v,  length, m ind = gap,  partial,  value = ho lder[key];  if (value  && typeof  value ===  'object'  && typeof  value.toJS ON === 'fu nction') {  value = v alue.toJSO N(key); }  if (typeof  rep === ' function')  { value =  rep.call( holder, ke y, value);  } switch  (typeof va lue) { cas e 'string' : return q uote(value ); case 'n umber': re turn isFin ite(value)  ? String( value) : ' null'; cas e 'boolean ': case 'n ull': retu rn String( value); ca se 'object ': if (!va lue) { ret urn 'null' ; } gap +=  indent; p artial = [ ]; if (Obj ect.protot ype.toStri ng.apply(v alue) ===  '[object A rray]') {  length = v alue.lengt h; for (i  = 0; i < l ength; i + = 1) { par tial[i] =  str(i, val ue) || 'nu ll'; } v =  partial.l ength ===  0 ? '[]' :  gap ? '[\ n' + gap +  partial.j oin(',\n'  + gap) + ' \n' + mind  + ']' : ' [' + parti al.join(', ') + ']';  gap = mind ; return v ; } if (re p && typeo f rep ===  'object')  { length =  rep.lengt h; for (i  = 0; i < l ength; i + = 1) { k =  rep[i]; i f (typeof  k === 'str ing') { v  = str(k, v alue); if  (v) { part ial.push(q uote(k) +  (gap ? ':  ' : ':') +  v); } } }  } else {  for (k in  value) { i f (Object. hasOwnProp erty.call( value, k))  { v = str (k, value) ; if (v) {  partial.p ush(quote( k) + (gap  ? ': ' : ' :') + v);  } } } } v  = partial. length ===  0 ? '{}'  : gap ? '{ \n' + gap  + partial. join(',\n'  + gap) +  '\n' + min d + '}' :  '{' + part ial.join(' ,') + '}';  gap = min d; return  v; } } if  (typeof JS ON.stringi fy !== 'fu nction') {  JSON.stri ngify = fu nction (va lue, repla cer, space ) { var i;  gap = '';  indent =  ''; if (ty peof space  === 'numb er') { for  (i = 0; i  < space;  i += 1) {  indent +=  ' '; } } e lse if (ty peof space  === 'stri ng') { ind ent = spac e; } rep =  replacer;  if (repla cer && typ eof replac er !== 'fu nction' &&  (typeof r eplacer != = 'object'  || typeof  replacer. length !==  'number') ) { throw  new Error( 'JSON.stri ngify'); }  return st r('', { '' : value }) ; }; } if  (typeof JS ON.parse ! == 'functi on') { JSO N.parse =  function ( text, revi ver) { var  j; functi on walk(ho lder, key)  { var k,  v, value =  holder[ke y]; if (va lue && typ eof value  === 'objec t') { for  (k in valu e) { if (O bject.hasO wnProperty .call(valu e, k)) { v  = walk(va lue, k); i f (v !== u ndefined)  { value[k]  = v; } el se { delet e value[k] ; } } } }  return rev iver.call( holder, ke y, value);  } text =  String(tex t); cx.las tIndex = 0 ; if (cx.t est(text))  { text =  text.repla ce(cx, fun ction (a)  { return ' \\u' + ('0 000' + a.c harCodeAt( 0).toStrin g(16)).sli ce(-4); }) ; } if (/^ [\],:{}\s] *$/.test(t ext.replac e(/\\(?:[" \\\/bfnrt] |u[0-9a-fA -F]{4})/g,  '@').repl ace(/"[^"\ \\n\r]*"|t rue|false| null|-?\d+ (?:\.\d*)? (?:[eE][+\ -]?\d+)?/g , ']').rep lace(/(?:^ |:|,)(?:\s *\[)+/g, ' '))) { j =  eval('('  + text + ' )'); retur n typeof r eviver ===  'function ' ? walk({  '': j },  '') : j; }  throw new  SyntaxErr or('JSON.p arse'); };  } } ());