2. EPMO Open Source Coordination Office Redaction File Detail Report

Produced by Araxis Merge on 9/13/2018 3:11:23 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.

2.1 Files compared

# Location File Last Modified
1 ConsultToolbox_SourceCode-7-12-2018CIF2.zip CCAdminTriage.ahk Thu Jul 12 20:18:04 2018 UTC
2 ConsultToolbox_SourceCode-7-12-2018CIF2.zip CCAdminTriage.ahk Wed Sep 12 19:19:07 2018 UTC

2.2 Comparison summary

Description Between
Files 1 and 2
Text Blocks Lines
Unchanged 3 1090
Changed 2 6
Inserted 0 0
Removed 0 0

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

2.4 Active regular expressions

No regular expressions were active.

2.5 Comparison detail

  1   /*
  2  
  3                                                        C CAdminTria ge.ahk
  4  
  5   This Auto  Hotkey mod ule functi ons to:
  6    
  7   To Display  the Consu lt Toolbox 's "Docume nt Adminis trative Sc reening" d ialog
  8       From t he Communi ty Care Ad d Comments  panel, Ta b 1 MSA El ig. Verifi cation
  9       Click  the "Docum ent Admini strative S creening"  button
  10           
  11       The "C lear" butt on resets  most contr ols
  12           Th e "OK" but ton send d ata to the  CCareComm ents dialo g, tab 1
  13           
  14           Th e CAN scor e data is  collected  by reading  the CPRS  open recor d and 
  15           se nding the  social sec urity numb er to 
  16           th e VA's SQA  CAN score  server da tabase
  17           
  18       Gui, 6 :
  19       Rows b egin at co lumn or po sition 20
  20  
  21   */
  22  
  23   ShowAdminT riage:
  24   AdmStart : = A_TickCo unt
  25  
  26   if ((Prior TriageReq  = "Complet e") or (Pr iorTriageR eq = "Not  Required")  or (Prior Admin = "Y es"))
  27   {
  28     tstr :=  "Administr ative scre ening is n ot require d or has a lready bee n done on  this consu lt.`n`nDo  you want t o perform  Administra tive Scree ning anywa y?"
  29     MsgBox,  4148, Tria ge is not  required,  %tstr%
  30     ifMsgBox , No
  31     { Return
  32     }     
  33   }
  34  
  35   if (xadmin triage=0)
  36     CoorOvri de := ""
  37   Gui, 1:-Al waysOnTop
  38   Gui, 6:Des troy
  39   Gui, 7:Des troy
  40  
  41   if (ConAdm TriageScor e > 0)  ;  admin scre ening alre ady perfor med, we ne ed to make  sure the  user wants  to redo i t  
  42  
  43       MsgBox , 36, Admi nistrative  Screening  Already D one, Do yo u want to  repeat it? `nAnswer Y ES to do o ver, NO to  keep curr ent result s
  44       ifMsgB ox No
  45       { Gui,  1:+Always OnTop
  46              Gui, 1:Def ault
  47         Gui,  1:Show
  48         Retu rn
  49       } 
  50    }
  51  
  52   Gui, 6:Def ault 
  53   Gui, 6:-Mi nimizeBox
  54   xadmintria ge := 1
  55   GoSub, Get PatientSSN
  56   CANPkg :=  ""  ; clea r any prev ious CAN s core
  57  
  58   if (strlen (PatientIn foSSN) = 9 )
  59     GoSub, G etCANScore FromServer
  60   Else if (s trlen(Pati entInfoSSN ) <> 9)
  61      {
  62      MsgBox  262160, In valid Soci al Securit y Number E RROR, ERRO R`n`CPRS S ocial Secu rity Numbe r NOT vali d
  63      Return
  64      }
  65   if (NO_CAN _Response  = 1)
  66     {
  67      MsgBox  262160, CA N server r esponse ER ROR, ERROR `n`nCannot  reach CAN  server`n` nExiting.. .
  68      Return
  69     }
  70   if (NO_CAN _Score = 1 )
  71      {
  72      MsgBox  262160, No  CAN Score  ERROR, ER ROR`n`nNo  CAN score  found`n`nE xiting...
  73      Return
  74      }
  75  
  76  
  77  
  78   Gui, 6:fon t, %CTBRed % %Font10% , Verdana  Bold
  79   Gui, 6:Add , Text, +T abStop  x2 0 y15 vgb,  Administr ative Scre ening for  Care Coord ination an d Case Man agement
  80   Gui, 6:fon t, %Font7% , Verdana
  81   Gui, 6:Add , Button,  x+20 yp-4  gClearAdmi nEntries,  Clear
  82   Gui, 6:fon t, %CTBRed % %Font10% , Verdana  Bold
  83   Gui, 6:Add , Text, +T abStop  x1 8 y+5, Not e, this is  not for a uthorizati on.
  84  
  85   Gui, 6:Fon t, %Font10 % cDefault , Verdana
  86  
  87   ;tstr := " Previous C are Coordi nation Lev el: " . Pr iorCareCoo rdLevel 
  88   Gui, 6:Add , Text, +T abStop  x2 0 yp+25 w4 50 vAdminS howCareCoo rd, Previo us Care Co ordination  Level: %P riorCareCo ordLevel%
  89  
  90   tstr := Co orStatus.N otDone 
  91   ;Gui, 6:Ad d, Text, + TabStop  y p x400 yp+ 4 w200 vSc rStatus, % tstr%
  92   Gui, 6:Fon t, %Font10 % cDefault , Verdana  Bold
  93   Gui, 6:Add , Text, +T abStop  x2 0 yp+25, A re you a c linical st aff member :
  94   Gui, 6:Fon t, %Font10 % cDefault , Verdana
  95   Gui, 6:Add , Radio, x +10 yp vAr eYouClinic alNo gStaf fClinVsAdm in, No
  96   Gui, 6:Add , Radio, x +10 yp vAr eYouClinic alYes gSta ffClinVsAd min, Yes 
  97   Gui, 6:Fon t, %Font10 % cDefault , Verdana  Bold
  98   Gui, 6:Add , Text, +T abStop  x2 0 yp+25, U rgency: is  appointme nt needed  within 48  hours: 
  99   Gui, 6:Fon t, %Font10 % cDefault , Verdana
  100   Gui, 6:Add , Radio, v GLUrgencyY es x+10 gC alcAdminSc ore, Yes
  101   Gui, 6:Add , Radio, v GLUrgencyN o x+10 gCa lcAdminSco re, No
  102   Gui, 6:Fon t, %Font10 % %CTBRed% , Verdana
  103    
  104   Gui, 6:Add , Text, +T abStop  y+ 5 x20, If  within 48  hrs, speci fy CAN sco re and for ward for c linical tr iage.
  105  
  106   Gui, 6:Fon t, %Font10 % cDefault , Verdana
  107   Gui, 6:Add , Text, +T abStop  yp +45 gCalcA dminScore,  Does the  consult sp ecify any  of the fol lowing com plex condi tions or s ervices? 
  108  
  109   tstr := "N one of the  above"
  110   Gui, 6:Add , DropDown List, vCom plexSvc xp  w401 y+8  gSelComple x, New Can cer Diagno sis
  111       |Outpa tient Surg ery
  112           |C oronary Ar tery Bypas s (CABG)
  113       |Chron ic Heart F ailure
  114       |Chron ic Obstruc tive Pulmo nary Disea se/ Pneumo nia
  115       |Inpat ient Hospi talization  (any caus e)
  116       |%tstr %
  117   GuiControl , Choose,  ComplexSvc , None of  the above
  118   ;Gui, 6:fo nt, %Font1 0% %CTBRed %, Verdana
  119   Gui, 6:fon t, %Font10 % cDefault , Verdana
  120   Gui, 6:Add , Text, +T abStop  y+ 8 x20,Does  the consu lt specify  any of th e followin g basic se rvices? 
  121  
  122   Gui, 6:Add , DropDown List, x20  y+8 w550 v BasicSvc g SelBasic,  Routine Fo llow-Up Th erapeutics  (Pre-sche duled serv ices Dialy sis, OT, P T, RT)
  123     |Routine  Mammograp hy
  124     |Cervica l Ca Scree ning (PAP  Test)
  125     |Direct  Scheduling
  126     |Routine  Screening  Colonosco py
  127     |%tstr%
  128   GuiControl , Choose,  BasicSvc,  None of th e above  
  129  
  130   Gui, 6:Add , Text, +T abStop  y+ 10 x20, CA N Score:
  131   Gui, 6:fon t, %Font10 % cDefault , Verdana
  132      
  133   Gui, 6:Add , Radio, x p+90 vGLCA N1  gCalcA dminScore,  0 to 74 
  134   Gui, 6:Add , Radio, x p+100 vGLC AN2 gCalcA dminScore,  No CAN Sc ore Availa ble
  135   Gui, 6:Add , Radio, y p+22 xp-10 0 vGLCAN3  gCalcAdmin Score, 75  to 90
  136   Gui, 6:Add , Radio, x p+100 vGLC AN4 gCalcA dminScore,  Over 90
  137  
  138  
  139   If  ((CANP kg.CanScor e.cEvent_1 y > -1) AN D (CANPkg. CanScore.c Event_1y <  75))
  140      {
  141      GuiCont rol, 6:, G LCAN1, % 1
  142      }
  143   Else If  ( (CANPkg.Ca nScore.cEv ent_1y > 7 5) AND (CA NPkg.CanSc ore.cEvent _1y < 91))
  144      {
  145      GuiCont rol, 6:, G LCAN3, % 1
  146      }
  147   Else If  ( (CANPkg.Ca nScore.cEv ent_1y > 9 0) AND (CA NPkg.CanSc ore.cEvent _1y < 100) )
  148      {
  149      GuiCont rol, 6:, G LCAN4, % 1
  150      }
  151   Else
  152      {
  153      GuiCont rol, 6:, G LCAN2, % 1
  154      }
  155      
  156   GuiControl , 6: Disab le, GLCAN1
  157   GuiControl , 6: Disab le, GLCAN2
  158   GuiControl , 6: Disab le, GLCAN3
  159   GuiControl , 6: Disab le, GLCAN4
  160      
  161  
  162   /*
  163   GetPatient SSN
  164       Values  read from  CPRS
  165   PatientInf oName
  166   PatientInf oSSN
  167   PatientInf oDOB
  168           
  169           
  170   GetCANScor eFromServe r   
  171           Va lues read  from JSON  CAN 
  172   CANPkg.Can Score.pati entICN
  173   CANPkg.Can Score.firs tName
  174   CANPkg.Can Score.last Name
  175   CANPkg.Can Score.ssn
  176   CANPkg.Can Score.birt hDate
  177   CANPkg.Can Score.cEve nt_1y
  178   CANPkg.Can Score.risk Date
  179   CANPkg.Can Score.exec uteDate
  180  
  181   */
  182  
  183   ;Indented  Can Score  Informatio n
  184   Can_Displa y_Text_1 : = "CAN Sco re for: "  . PatientI nfoName .  "  DOB:  "  . Patient InfoDOB .  "  XXX-XX- " . substr (PatientIn foSSN,6,4)
  185   Gui, 6:Add , Text, +T abStop y+1 0 x40, %Ca n_Display_ Text_1%
  186  
  187   if (strlen (trim(CANP kg.CanScor e.cEvent_1 y)) > 0)
  188     Can_Disp lay_Text_2  := "CAN S core: " .  CANPkg.Can Score.cEve nt_1y . "   Risk Asse sment Date : " . CANP kg.CanScor e.riskDate
  189   else
  190     Can_Disp lay_Text_2  := "CAN S core: Not  found    R isk Assesm ent Date:  unavailabl e"
  191     
  192   Gui, 6:Add , Text, +T abStop  y+ 10 x40, %C an_Display _Text_2%
  193   if (Patien tInfoInpat ient)
  194   {
  195     Gui, 6:F ont, %CTBR ed%, Verda na Bold 
  196     Gui, 6:A dd, Text,  +TabStop y p x+15, IN PATIENT NO W
  197     Gui, 6:F ont, c, Ve rdana
  198   }
  199  
  200   ;Gui, 6:fo nt, s10 w4 00 %CTBRed %  
  201   ;Gui, 6:Ad d, Text, + TabStop  x 20 yp+20,  If CAN sco re is 90 o r higher,  skip remai ning quest ions and v eteran wil l be assig ned to com plex/chron ic care co ordination  level.
  202  
  203   Gui, 6:Fon t, %Font10 %, Verdana
  204   Gui, 6:Add , Text, +T abStop  x2 0 y+8 w600  vCurrentC areCoord,  Current Ca re Coord L evel Asses sment: Inc omplete
  205   Gui, 6:Fon t, %Font10 %, Verdana  Bold
  206   ;Gui, 6:Fo nt, s10 w7 00
  207   Gui, 6:Add , Text, +T abStop  y+ 10 w450 vS cheduling
  208  
  209   Gui, 6:Fon t, %Font10 % cDefault , Verdana
  210   Gui, 6:Add , Text, +T abStop  y+ 10 x20 w50 0 vCalcTri ageNeeded,  Clinical  Triage:
  211   Gui, 6:Add , Text, +T abStop  y+ 20 x20 w50 0 vSentToH eader, Sen d to: 
  212   if (AdminR emember =  0)
  213     AdminNot ified := " "
  214   Gui, 6:Add , edit, xp  yp+23 w23 0 gCalcAdm inScore vA dminNotifi ed, %Admin Notified%
  215   Gui, 6:Fon t, %Font8%
  216   Gui, 6:Add , Text, +T abStop  yp +3 x+15 vA Warning, ( you must r emember to  send CPRS  alert to  indicated  staff)
  217  
  218   Gui, 6:Fon t, %Font10 %
  219   Gui, 6:Add , Checkbox , x22 y+13  vAdminRem ember, Rem ember staf f person f or next re ferral
  220   GuiControl , 6:, Admi nRemember,  %AdminRem ember%
  221   Gui, 6:+Al waysOnTop
  222   if (ParmCl inical=1)
  223     GuiContr ol, , AreY ouClinical Yes, % 1 
  224   else
  225     GuiContr ol, , AreY ouClinical No, % 1
  226   gosub, Sta ffClinVsAd min
  227   Gui, Add,  Text, +Tab Stop  x20  y+15 vStat usShow r1  w500, %A_B lank%
  228   Gui, Add,  Button, gA dmTriage x 290 yp+25,  OK
  229   Guicontrol , , GLUrge ncyNo, % 1
  230   ATitle :=  "Administr ative Scre ening (for  use by co mmunity ca re staff o nly)"
  231   Gui, 6:Sho w, Center,  %ATitle%
  232   GuiControl , 1:, NewC linText, % A_Space%
  233   GuiControl , 1:, NewC linCoord,  %A_Space%
  234   GuiControl , 1:, NewC linSendTo,  %A_Space%
  235   GuiControl , 1:, NewC linTriage,  %A_Space%
  236   GuiControl , 1:, NewO vrHeader,  %A_Space%
  237   GuiControl , 1:, NewO vrReason,  %A_Space%
  238   Return
  239  
  240   AdmTriage:
  241   GuiControl Get, Admin Remember
  242   if ((GLCAN 1 = 0) and  (GLCAN2 =  0) and (G LCAN3 = 0)  and (GLCA N4 = 0))
  243   { Msgbox,  4096, Scre ening Inco mplete, Pl ease compl ete screen ing includ ing CAN Sc ore questi on to comp lete evalu ation.
  244     Return
  245   }
  246   if (CoorLe vel = "Inc omplete")
  247   {
  248      Msgbox,  4100, Scr eening is  not comple te, Please  complete  screening  process.`n `nDo you w ant to abo rt?
  249      ifMsgBo x no
  250        retur
  251      else 
  252        goto,  6GuiClose     
  253   }
  254   AdminNotif ied := Ttr im(AdminNo tified)
  255  
  256   if (StrLen (AdminNoti fied) < 2)
  257  
  258     
  259     if (Parm Clinical =  1)
  260       tstr : = "You hav en't desig nated the  name of th e schedule r "
  261     else
  262       tstr : = "You hav en't desig nated the  name of th e clinical  staff mem ber  "
  263     HideShow AdminActio n := trim( HideShowAd minAction)
  264     if (Hide ShowAdminA ction = "S how")
  265     { msgbox , 4100, Sc heduling A lert, %tst r% who you  will aler t. Do you  want to pr oceed? `n` nAnswer ye s to proce ed, no to  return and  document  staff.
  266       ifMsgB ox No 
  267         retu rn
  268       ; Othe rwise we p roceed   
  269      } 
  270   }       
  271  
  272   if (CoorLe vel != "In complete")
  273  
  274     GuiContr ol, 1:, Cl inPriorTri ageType, N ew Admin A ssessment
  275     GuiContr ol, 1:, Cl inPriorTri ageReq, %C alcTriageN eeded%         
  276   }
  277   GuiControl , 1:, NewA dmTriageRe q, %CalcTr iageNeeded %
  278   PriorTriag eReq := tr im(Substr( CalcTriage Needed, 17 ))
  279   ;msgbox,40 96, triage status, Pr iorTriageR eq = %Prio rTriageReq %
  280   PriorAdmin  := "Yes"
  281   goto, Fini shGui6
  282   6GuiEscape :
  283   6GuiClose:
  284   GuiControl , 1:, NewA dmText, %A _Space% 
  285   GuiControl , 1:, NewA dmCoord, % A_Space%
  286   GuiControl , 1:, NewA dmTriageRe q, %A_Spac e%
  287   GuiControl , 1:, NewA dmSendTo,  %A_Space%
  288   FinishGui6 :
  289   Gui, 6:Des troy
  290   Gui, 1:+Al waysOnTop
  291   Gui, 1:Sho w
  292   ScreeningT imeSpent : = (A_TickC ount - Adm Start)/100 0
  293   Gosub, Get CCTextFiel ds
  294   return
  295  
  296   StaffClinV sAdmin:
  297   Gui, 6:sub mit, nohid e
  298   if (AreYou ClinicalYe s = 1 and  ParmClinic al = 0)  ;  clinical  param has  just been  set, we ne ed to save  it
  299   { ParmClin ical = 1
  300     Gosub, P utsettings
  301   }
  302   if (AreYou ClinicalNo  = 1 and P armClinica l = 1) ; c linical pa ram has ju st been ch anaged fro m yes to n o
  303   { ParmClin ical = 0
  304     Gosub, P utsettings
  305   }
  306   if (ParmCl inical = 1 )
  307     tstr :=  "Schedulin g staff me mber you w ill alert:  "
  308   else
  309     tstr :=  "Clinical  staff memb er you wil l alert: "
  310   Guicontrol , , SentTo Header, %  tstr
  311   GuiControl , Move, Se ntToHeader , w300
  312   SentToHead er := tstr  
  313   Gosub, Cal cAdminScor e
  314   Return
  315  
  316  
  317  
  318   CalcAdminS core:
  319   ;msgbox, B asicSvc: > %BasicSvc% <
  320   ;msgbox, C omplexSvc:  >%Complex Svc%<
  321  
  322   Gui, 6:sub mit, nohid e
  323   CoorLevel  := "Incomp lete"
  324   AssessStat us :=0  ;  0 = incomp lete, 1 =  complete,  2 = comple te, needs  clinical
  325   NewAdmText  := ""
  326   NeedsClinR evFlag :=  0   ;deter mintes if  send to re view is ne eded.
  327  
  328   if ((GLCAN 2 = 1) or  (GLCAN3 =  1))
  329   {  AssessS tatus := 2
  330      CoorLev el := "Mod erate"
  331   }
  332   if (GLCAN4  = 1)
  333   {  AssessS tatus := 2
  334      CoorLev el := "Com plex"
  335   }
  336   if ((GLCAN 1 = 1) and  (AssessSt atus <> 1) )
  337   {  AssessS tatus := 1
  338      CoorLev el := "Bas ic"
  339   }  
  340   ComplexSvc  := trim(C omplexSvc)
  341   if (Comple xSvc <> "N one of the  above")
  342   {  ;msgbox , we have  complexsvc
  343      AssessS tatus := 2
  344      CoorLev el := "Com plex"
  345   }
  346   BasicSvc : = trim(Bas icSvc)
  347   if (BasicS vc <> "Non e of the a bove")
  348   {  ;msgbox , we match ed basic s vc
  349      AssessS tatus := 1
  350      CoorLev el := "Bas ic"
  351   }
  352   if (GLUrge ncyYes=1)
  353   {  CoorLev el := "Urg ent"
  354      AssessS tatus := 2
  355   }
  356  
  357   If (CoorLe vel = "Bas ic")
  358     CalcTria geNeeded : = "Clinica l Triage:  Not Requir ed"
  359   else if (C oorLevel =  "Incomple te")
  360     CalcTria geNeeded : = "Clinica l Triage:  undetermin ed if need ed"
  361   else
  362     CalcTria geNeeded : = "Clinica l Triage:  Required"
  363   ;if (AreYo uClinicalY es = 1)
  364   ;    GuiCo ntrol, 6:,  CalcTriag eNeeded, % A_Space%
  365   ;else   
  366   GuiControl , 6:, Calc TriageNeed ed, %CalcT riageNeede d%
  367   GuiControl , 1:, NewA dmTriageRe q, %CalcTr iageNeeded %
  368           
  369     
  370   HideshowAd minAction  := "Hide"
  371   GuiControl , , Curren tCareCoord , Current  Coord Leve l Assessme nt: %CoorL evel%
  372   if (Assess Status > 0 )
  373      GuiCont rol, , Sch eduling, P roceed to  Scheduling
  374   if (Assess Status = 0 )
  375     GuiContr ol, , Sche duling, %A _Space% 
  376   else
  377   { if (Parm Clinical =  1) 
  378     { 
  379       if (As sessStatus  = 2)
  380        GuiCo ntrol, , S cheduling,  Clinical  Triage Req uired
  381           el se
  382       { GuiC ontrol, ,  Scheduling , Send for  Schedulin g
  383              HideShowAd minAction  := "Show" 
  384           }   
  385     }
  386     else
  387     { if (As sessStatus  = 1)
  388         GuiC ontrol, ,  Scheduling , Proceed  with sched uling
  389           el se
  390       { GuiC ontrol, ,  Scheduling , Proceed  with sched uling and  notify cli nical staf f
  391         Hide ShowAdminA ction := " Show"  
  392       }
  393     }
  394   }  
  395  
  396   ;GuiContro l, 6:, Sta tusShow, D ebugging I nfo: CoorL evel: %Coo rLevel% Hi deShow: %H ideshowAdm inAction%  AssessStat us: %Asses sStatus% P armClinica l: %ParmCl inical%
  397   ;GuiContro l, 6:Move,  StatusSho w, w500
  398   GuiControl , 6:%Hides howAdminAc tion%, Sen tToHeader
  399   GuiControl , 6:%Hides howAdminAc tion%, Adm inNotified
  400   GuiControl , 6:%Hides howAdminAc tion%, AWa rning
  401   GuiControl , 6:%Hides howAdminAc tion%, Adm inRemember
  402  
  403   if (GLUrge ncyNo = 1)
  404     NewText  := "  Urge ncy: not w ithin 48 h rs`n"
  405   else
  406     NewText  := "  Urge ncy: withi n 48 hrs`n "
  407   if (BasicS vc <> "Non e of the a bove")
  408     NewText  .= "  Basi c Service  Selected:  " . BasicS vc . "`n"
  409   if (Comple xSvc <> "N one of the  above")
  410     NewText  .= "  Comp lex Servic e Selected : " . Comp lexSvc . " `n"
  411   if (GLCAN1  = 1)
  412     NewText  .= "  CAN  Score: les s than 75` n"
  413   if (GLCAN2  = 1)
  414     NewText  .= "  CAN  Score: No  CAN score  available` n"
  415   if (GLCAN3  = 1)
  416     NewText  .= "  CAN  Score: 75  to 90`n"
  417   if (GLCAN4  = 1)
  418     NewText  .= "  CAN  Score: Ove r 90`n"  
  419   tstr := Ne wText
  420   GuiControl , 1:, NewA dmText, %N ewText% 
  421  
  422   tstr := "A dmin Scree ning Care  Coordinati on: " . Co orLevel 
  423   GuiControl , 1:, NewA dmCoord, % tstr%
  424   if (Hidesh owAdminAct ion = "Hid e")
  425  
  426     GuiContr ol, 1:, Ne wAdmSendTo , %A_Space %
  427  
  428   else
  429   { if (strl en(trim(Ad minNotifie d)) < 2)
  430     {
  431       GuiCon trol, 1:,  NewAdmSend To, %A_Spa ce% 
  432     }
  433     else
  434     { if (Pa rmClinical  = 1)
  435         tstr  := "Admin  Staff ale rt, sendin g to: " .  AdminNotif ied . "."
  436       else
  437         tstr  := "Clini cal Staff  alert, sen ding to: "  . AdminNo tified . " ." 
  438       GuiCon trol, 1:,  NewAdmSend To, %tstr%
  439       
  440     }  
  441  
  442   GuiControl , 1:Move,  NewAdmSend To, w401  
  443   GuiControl , 1:, Prio rTriageReq uired, %Ca lcTriageNe eded%
  444   ;msgbox, 4 096, send  to, %Admin Notified%
  445   Return
  446  
  447   SelBasic:
  448   ;GuiContro lGet, tstr , , BasicS vc
  449   GuiControl , ChooseSt ring, Comp lexSvc, %  "None"
  450   ;Gui, 6:sh ow
  451   Gosub, Cal cAdminScor e
  452   Return
  453  
  454   SelComplex :
  455   ;GuiContro lGet, tstr , , BasicS vc
  456   GuiControl , ChooseSt ring, Basi cSvc, % "N one"
  457   ;Gui, 6:sh ow
  458   Gosub, Cal cAdminScor e
  459   Return
  460  
  461   ClearAdmin Entries:
  462   GuiControl , 6:, GLUr gencyYes,  % 0
  463   GuiControl , 6:, GLUr gencyNo, %  1
  464   GuiControl , 6:, GLCA N1, % 0
  465   GuiControl , 6:, GLCA N2, % 0
  466   GuiControl , 6:, GLCA N3, % 0
  467   GuiControl , 6:, GLCA N4, % 0
  468   GuiControl , ChooseSt ring, Comp lexSvc, No ne
  469   GuiControl , ChooseSt ring, Basi cSvc, None
  470   GuiControl , , Curren tCareCoord , Current  Coord Leve l Assessme nt: Incomp lete
  471   GuiControl , , Schedu ling, %A_S pace% 
  472  
  473   gosub, Cal cAdminScor e
  474   GuiControl , 6:, ScrS tatus, %Ad mStatus%    
  475   Return
  476  
  477  
  478  
  479   GetCANScor eFromServe r:
  480  
  481   ; Installi ng a PFX C ertificate  with CERT UTIL.exe
  482   ;RunWait,  %A_WinDir% \System32\ CertUtil.e xe, -impor tpfx -p ja ixy2010 -f  "%Program Files%\Con sultToolbo x\toolbox. pfx"
  483  
  484  
  485   Global HTT P_Object : = ComObjCr eate("WinH ttp.WinHtt pRequest.5 .1")
  486   CAN_Reques t_JSON :=  "{  ""ssn" ":""" . Pa tientInfoS SN . """,   ""vauserI d"":""" .  A_UserName  . """}"
  487  
  488   ; A hard-c oded CAN_R equest_JSO
  489   ;CAN_Reque st_JSON :=  "{  ""ssn "":""" . P atientInfo SSN . """,   ""vauser Id"":""mac har""}"
  490  
  491   msgbox, Sh ow Request  JSON %CAN _Request_J SON%
  492  
  493  
  494   ; URL for  a NON http s web addr ess
  495   ;ReturnVal ue := HTTP _Object.Op en("GET",  "http:// DNS . URL :  PORT /canscore" , false)   
  496  
  497  
  498  
  499   msgbox, Sh ow Send SS N with Cli ent Certif icate to A pache`n`nP arm CAN UR L = %ParmC AN_URL%`nP arm Client  Cert = %P armClient_ Cert%
  500   /*
  501   Found a si te with th e valid st ore names  which are:
  502   ca -> Spec ifies cert ificates i n the Inte rmediate C ertificati on Authori ties store
  503   my -> Spec ifies cert ificates i ssued to t he current  user
  504   root -> Sp ecifies ce rtificates  in the Tr usted Root  Certifica tion Autho rities sto re
  505   spc -> Spe cifies sof tware publ isher cert ificates
  506   user_creat ed_store - > Specifie s the name  of a user -created c ertificate  store
  507   */
  508  
  509  
  510   ;HTTP_Obje ct.SetClie ntCertific ate("LOCAL _MACHINE\P ersonal\D NS . URL ")
  511   ;HTTP_Obje ct.SetClie ntCertific ate("LOCAL _MACHINE\P ersonal\ DN S
. URL ")
  512  
  513   HTTP_Objec t.SetClien tCertifica te(ParmCli ent_Cert)
  514  
  515   ReturnValu e := HTTP_ Object.Ope n("GET", P armCAN_URL , false)
  516   HTTP_Objec t.SetReque stHeader(" Content-Ty pe", "appl ication/js on")
  517   HTTP_Objec t.Send(CAN _Request_J SON) 
  518   CAN_Respon se := HTTP _Object.Re sponseText
  519  
  520  
  521   No_CAN_Res ponse := 0
  522   if (strlen (CAN_Respo nse) < 2)
  523      {
  524      NO_CAN_ Response : = 1
  525      Return
  526      }
  527  
  528  
  529   CAN_Status  := HTTP_O bject.Stat us
  530   ;MsgBox 26 2144, CAN  Status, %C AN_Status%
  531  
  532  
  533   CANPkg :=  json.load( CAN_Respon se)
  534  
  535   No_CAN_Sco re := 0
  536   if (strlen (trim(CANP kg.CanScor e.cEvent_1 y)) < 1)
  537      {
  538      NO_CAN_ Score := 1
  539      ;MsgBox  262160, I nvalid CAN  Score ERR OR, ERROR` n`nNo CAN  score foun d
  540      Return
  541      }  
  542      
  543   msgbox 262 208, CAN s core retur n value, S how Respon se %CAN_Re sponse%
  544  
  545  
  546   Return
  547  
  548