Produced by Araxis Merge on 11/9/2018 12:16:38 PM 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.
# | Location | File | Last Modified |
---|---|---|---|
1 | RAMS-2.3.0.zip\RAMS-2.3.0\SitePages | Committee.html | Mon Aug 13 19:38:34 2018 UTC |
2 | RAMS-2.3.0.zip\RAMS-2.3.0\SitePages | Committee.html | Fri Nov 9 14:54:59 2018 UTC |
Description | Between Files 1 and 2 |
|
---|---|---|
Text Blocks | Lines | |
Unchanged | 6 | 3130 |
Changed | 5 | 10 |
Inserted | 0 | 0 |
Removed | 0 | 0 |
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 |
No regular expressions were active.
1 | <!-- | |
2 | E1.1.0 RAM Increment 1 Patch C ode | |
3 | January 20 15 | |
4 | Department of Vetera n's Affair s/Booz All en Hamilto n | |
5 | irb-applic ations-gen eral.html | |
6 | --> | |
7 | <!DOCTYPE html> | |
8 | <html lang ="en" xmln s:mso="urn :schemas-m icrosoft-c om:office: office" | |
9 | xmlns:ms dt="uuid:C 2F41010-65 B3-11d1-A2 9F-00AA00C 14882"> | |
10 | <head> | |
11 | <meta http -equiv="co ntent-type " content= "text/html ; charset= UTF-8"> | |
12 | <meta char set="utf-8 "> | |
13 | <meta http -equiv="X- UA-Compati ble" conte nt="IE=edg e"> | |
14 | <meta name ="descript ion" conte nt=""> | |
15 | <meta name ="author" content="V eterans Af fairs Rese arch Admin istrative Management System"> | |
16 | <meta http -equiv="Pr agma" cont ent="no-ca che"> | |
17 | <meta http -equiv="Ex pires" con tent="-1"> | |
18 | <!-- Note there is n o responsi ve meta ta g here --> | |
19 | <title>VA RAMS</titl e> | |
20 | <!-- Must go at top or documen t.ready wi ll not wor k. The res t should b e at botto m --> | |
21 | <script sr c="../Site Assets/js/ jquery.js" type="tex t/javascri pt"></scri pt> | |
22 | <link rel= "styleshee t" type="t ext/css" h ref="../Si teAssets/c ss/jquery. dataTables .css"> | |
23 | <script ty pe="text/j avascript" charset=" utf8" src= "../SiteAs sets/js/jq uery.dataT ables.js"> </script> | |
24 | <script ty pe="text/j avascript" src="../S iteAssets/ js/Microso ftAjax.js" ></script> | |
25 | <script ty pe="text/j avascript" src="../S iteAssets/ js/rams-en vironment. js"></scri pt> | |
26 | <script ty pe="text/j avascript" charset=" utf8" src= "../SiteAs sets/js/js hashtable- 3.0.js"></ script> | |
27 | <script ty pe="text/j avascript" charset=" utf8" src= "../SiteAs sets/js/js hashset-3. 0.js"></sc ript> | |
28 | <script ty pe="text/j avascript" charset=" utf8" src= "../SiteAs sets/js/fa cilityInfo .js"></scr ipt> | |
29 | <script ty pe="text/j avascript" charset=" utf8" src= "../SiteAs sets/js/dy namicGener ation.js"> </script> | |
30 | <script ty pe="text/j avascript" src="/sit es/IRBAppl ications/_ layouts/15 /sp.runtim e.js"></sc ript> | |
31 | <script ty pe="text/j avascript" src="/sit es/IRBAppl ications/_ layouts/15 /sp.js"></ script> | |
32 | <script da ta-pace-op tions='{ " elements": { "select ors": [".p ull-right" ] }, "star tOnPageLoa d": true } ' | |
33 | src="../ SiteAssets /js/pace.j s"></scrip t> | |
34 | <!-- Boots trap core CSS --> | |
35 | <link href ="../SiteA ssets/css/ bootstrap. min.css" r el="styles heet"> | |
36 | <link href ="../SiteA ssets/css/ pace-theme -loading-b ar.css" re l="stylesh eet"> | |
37 | <!-- Custo m styles f or this te mplate --> | |
38 | <link href ="../SiteA ssets/css/ styles.css " rel="sty lesheet"> | |
39 | <link href ="../SiteA ssets/css/ datepicker .css" rel= "styleshee t"> | |
40 | <!-- Just for debugg ing purpos es. Don't actually c opy these 2 lines! - -> | |
41 | <!--[if lt IE 9]><sc ript src=" ../../asse ts/js/ie8- responsive -file-warn ing.js"></ script><![ endif]--> | |
42 | <script sr c="../Site Assets/js/ ie-emulati on-modes-w arning.js" type="tex t/javascri pt"></scri pt> | |
43 | <!-- HTML5 shim and Respond.js IE8 suppo rt of HTML 5 elements and media queries - -> | |
44 | <!--[if lt IE 9]> | |
45 | <scr ipt src=". ./SiteAsse ts/js/html 5shiv.min. js"></scri pt> | |
46 | <scr ipt src=". ./SiteAsse ts/js/resp ond.min.js "></script > | |
47 | <![end if]--> | |
48 | <!--[if gt e mso 9]>< xml> | |
49 | <mso:Custo mDocumentP roperties> | |
50 | <mso:ItemR etentionFo rmula msdt :dt="strin g"></mso:I temRetenti onFormula> | |
51 | <mso:_dlc_ policyId m sdt:dt="st ring"></ms o:_dlc_pol icyId> | |
52 | <mso:TaxKe ywordTaxHT Field msdt :dt="strin g"></mso:T axKeywordT axHTField> | |
53 | <mso:TaxKe yword msdt :dt="strin g"></mso:T axKeyword> | |
54 | <mso:Targe t_x0020_Au diences ms dt:dt="str ing"></mso :Target_x0 020_Audien ces> | |
55 | <mso:TaxCa tchAll msd t:dt="stri ng"></mso: TaxCatchAl l> | |
56 | </mso:Cust omDocument Properties > | |
57 | </xml><![e ndif]--> | |
58 | <!-- Impor ts needed for Genera teAgendaRe port --> | |
59 | <script sr c="/sites/ IRBApplica tions/Site Assets/js/ docxtempla ter.js" ty pe="text/j avascript" ></script> | |
60 | <script sr c="/sites/ IRBApplica tions/Site Assets/js/ FileSaver. min.js" ty pe="text/j avascript" ></script> | |
61 | <script sr c="/sites/ IRBApplica tions/Site Assets/js/ jszip-util s.js" type ="text/jav ascript">< /script> | |
62 | <script sr c="/sites/ IRBApplica tions/Site Assets/js/ spin.min.j s" type="t ext/javasc ript"></sc ript> | |
63 | <script sr c="/sites/ IRBApplica tions/Site Assets/js/ moment.js" type="tex t/javascri pt"></scri pt> | |
64 | <!--[if IE ]> | |
65 | <script ty pe="text/j avascript" src="exam ples/vendo r/jszip-ut ils-ie.js" ></script> | |
66 | <![endif]- -> | |
67 | <!-- End o f Imports needed for GenerateA gendaRepor t --> | |
68 | </head> | |
69 | <body> | |
70 | <a href= "#MainCont ent" class ="sr-only" >Skip to m ain conten t </a> | |
71 | <!-- Ski p to main content -- > | |
72 | <!-- Fix ed navbar --> | |
73 | <div cla ss="navbar navbar-de fault navb ar-static- top" role= "navigatio n"> | |
74 | <div c lass="cont ainer"> | |
75 | <div class="na vbar-heade r"> | |
76 | <h 1 title="D epartment of Veteran s Affairs Seal.Veter ans Affair s Research Administr ative Mana gement Sys tem"> | |
77 | <a class=" navbar-bra nd" href=" #">Departm ent of Vet erans Affa irs Seal.V eterans Af fairs Rese arch | |
78 | Administ rative Man agement Sy stem</a> | |
79 | </ h1> | |
80 | </di v> | |
81 | <div class="na vbar-colla pse collap se"> | |
82 | <u l class="n av navbar- nav navbar -right mai n-nav"> | |
83 | <li><a tit le="Home" href="/sit es/IRBAppl ications/S itePages/H ome.aspx"> Home</a></ li> | |
84 | <li class= "active">< a title="R esearch St udy Applic ations" | |
85 | href="/s ites/IRBAp plications /SitePages /irb%20app lications. aspx">Rese arch Study Applicati on</a></li > | |
86 | <li><a id= "investiga torActivit ies" title ="Investig ator Activ ities" | |
87 | href=".. /SiteAsset s/committe e_redirect .html?comm itteeActio n=investig atorActivi ties">Inve stigator | |
88 | Activi ties</a></ li> | |
89 | <li><a tit le="Commit tee Activi ties" | |
90 | href=".. /SiteAsset s/committe e_redirect .html?comm itteeActio n=committe eActivitie s">Committ ee Activit ies</a></l i> | |
91 | <li><a id= "profile" title="Per sonal Prof ile" href= "">Persona l Profile< /a></li> | |
92 | </ ul> | |
93 | </di v> | |
94 | <!-- /.nav-coll apse --> | |
95 | </div> | |
96 | </div> | |
97 | <!-- /.n avbar-stat ic-top --> | |
98 | <div cla ss="contai ner" id="M ainContent "> | |
99 | <div c lass="row" > | |
100 | <div class="co l-xs-12"> | |
101 | <h 1 id="page Header" cl ass="text- center"></ h1> | |
102 | </di v> | |
103 | </div> | |
104 | <div c lass="row" > | |
105 | <div class="co l-xs-6"> | |
106 | <h 2 id="comm itteeSched uledMeetin gsHeader" class="tex t-center"> </h2> | |
107 | <d iv style=" display: i nline"> | |
108 | <br /> | |
109 | <div style ="display: inline"> | |
110 | <a id="c ommitteeSc heduledMee tingEventL ink">manag e schedule d meetings </a> | |
111 | <table i d="schedul edMeetings ListTable" class="di splay"> | |
112 | <capti on class=" hidden">Sc heduled Me etings Lis t Table</c aption> | |
113 | <thead > | |
114 | <tr> | |
115 | <t h>Title</t h> | |
116 | <t h>Location </th> | |
117 | <t h>Start Ti me</th> | |
118 | <t h>Generate Agenda Re port</th> | |
119 | <t h>Generate Minutes R eport</th> | |
120 | </tr > | |
121 | </thea d> | |
122 | <tbody > | |
123 | </tbod y> | |
124 | </table> | |
125 | </div> | |
126 | </ div> | |
127 | <h 2 id="comm itteePastM eetingsHea der" class ="text-cen ter"></h2> | |
128 | <d iv style=" display: i nline"> | |
129 | <br /> | |
130 | <div style ="display: inline"> | |
131 | <a id="c ommitteePa stMeetingE ventLink"> manage pas t meetings </a> | |
132 | <table i d="pastMee tingsListT able" clas s="display "> | |
133 | <capti on class=" hidden">Pa st Meeting s List Tab le</captio n> | |
134 | <thead > | |
135 | <tr> | |
136 | <t h>Title</t h> | |
137 | <t h>Start Ti me</th> | |
138 | <t h>Generate Agenda Re port</th> | |
139 | <t h>Generate Minutes R eport</th> | |
140 | </tr > | |
141 | </thea d> | |
142 | <tbody > | |
143 | </tbod y> | |
144 | </table> | |
145 | </div> | |
146 | </ div> | |
147 | <h 2 id="comm itteeMeeti ngMinutesH eader" cla ss="text-c enter"></h 2> | |
148 | <d iv style=" display: i nline"> | |
149 | <br /> | |
150 | <div style ="display: inline"> | |
151 | <a id="c ommitteeMe etingMinut esDocument sLink">man age meetin g minutes< /a> | |
152 | <table i d="meeting MinutesLis tTable" cl ass="displ ay"> | |
153 | <capti on class=" hidden">Me eting Minu tes List T able</capt ion> | |
154 | <thead > | |
155 | <tr> | |
156 | <t h>Name</th > | |
157 | <t h>Modified </th> | |
158 | <t h>Modified By</th> | |
159 | </tr > | |
160 | </thea d> | |
161 | <tbody > | |
162 | </tbod y> | |
163 | </table> | |
164 | </div> | |
165 | </ div> | |
166 | </di v> | |
167 | <div class="co l-xs-6"> | |
168 | <h 2>Links</h 2> | |
169 | <u l id="link s"> | |
170 | <li><a id= "committee RosterLink ">Committe e Roster</ a></li> | |
171 | <li><a id= "fwamouLin k">FWAMOU< /a></li> | |
172 | <li><a id= "offsiteWa iversLink" >Off-site Waivers</a ></li> | |
173 | <li><a id= "adverseRe portableEv entLink">A dverse Rep ortable Ev ent</a></l i> | |
174 | <li><a hre f="https:/ / DNS . URL /Resources /policies/ " target=" _blank">OR D Policies and | |
175 | Guidan ce Documen ts</a></li > | |
176 | <li><a id= "tmsLink"> TMS Data V iew</a></l i> | |
177 | <li><a hre f="#" oncl ick="displ ayCommitte eTrainingR eport(); r eturn fals e;" id="co mmitteeTra iningLink" >Committee | |
178 | Traini ng Report< /a></li> | |
179 | </ ul> | |
180 | <p ></p> | |
181 | <h 2 id="comm itteeDocum entsHeader " class="t ext-center "></h2> | |
182 | <d iv style=" display: i nline"> | |
183 | <br /> | |
184 | <div style ="display: inline"> | |
185 | <a id="c ommitteeDo cumentsLin k">manage documents< /a> | |
186 | <table i d="committ eeDocument sListTable " class="d isplay"> | |
187 | <capti on class=" hidden">Co mmittee Do cuments Li st Table</ caption> | |
188 | <thead > | |
189 | <tr> | |
190 | <t h>Name</th > | |
191 | <t h>Modified </th> | |
192 | <t h>Modified By</th> | |
193 | </tr > | |
194 | </thea d> | |
195 | <tbody > | |
196 | </tbod y> | |
197 | </table> | |
198 | </div> | |
199 | </ div> | |
200 | </di v> | |
201 | </div> | |
202 | <div c lass="col- xs-12"> | |
203 | <h2 id="studie sHeader" c lass="text -center">< /h2> | |
204 | <div style="di splay: inl ine"> | |
205 | <t able id="a pplication List" clas s="display "> | |
206 | <caption c lass="hidd en">Applic ation List Table</ca ption> | |
207 | <thead> | |
208 | <tr> | |
209 | <th>St udyIDLink< /th> | |
210 | <th>St udy Title< /th> | |
211 | <th>Pr incipal In vestigator </th> | |
212 | <th>Ap plication Type</th> | |
213 | <th>Ap plication Status</th > | |
214 | <th>Re newal Date </th> | |
215 | <th>Fa cilities L ookup</th> | |
216 | </tr> | |
217 | </thead> | |
218 | </ table> | |
219 | </di v> | |
220 | </div> | |
221 | </div> | |
222 | <script type="text /javascrip t"> | |
223 | v ar hostnam e = window .location. hostname; | |
224 | ||
225 | v ar siteUrl = window. location.h ref; | |
226 | v ar facilit yName = ge tParamValu e('facilit yName'); | |
227 | v ar facilit yTitle = g etParamVal ue('facili tyTitle'); | |
228 | f acilityTit le = facil ityTitle.r eplace(/%2 0/g, " "); | |
229 | f acilityTit le = facil ityTitle.r eplace(/_/ g, ' '); | |
230 | ||
231 | v ar committ eeName = g etParamVal ue('commit teeName'); | |
232 | v ar groupPa rt = getPa ramValue(' groupPart' ); | |
233 | g roupPart = groupPart .replace(/ %20/g, " " ); | |
234 | g roupPart = groupPart .replace(/ _/g, ' '); | |
235 | ||
236 | v ar siteCom mittee = f acilityTit le + " " + committee Name; | |
237 | v ar pageTit le = facil ityTitle + " " + com mitteeName + " page" ; | |
238 | ||
239 | v ar schedul edMeetings List = []; | |
240 | v ar pastMee tingsList = []; | |
241 | v ar committ eeDocument sList = [] ; | |
242 | v ar meeting MinutesDoc umentsList = []; | |
243 | v ar monthNa mes = [ "J anuary", " February", "March", "April", " May", "Jun e", "July" , "August" , "Septemb er", | |
244 | "October ", "Novemb er", "Dece mber" | |
245 | ] ; | |
246 | ||
247 | v ar applica tionList = []; | |
248 | ||
249 | v ar documen tRequestUr i = ""; | |
250 | ||
251 | / / get the list libra ry name an d replace the holder s in the a nchor href and the R EST API Ur i | |
252 | / / change t he siteUri and restU ri | |
253 | // https:/ / DNS . URL /sites/IRB Applicatio ns/Miami/_ api/web/li sts/getbyt itle('RDC Calendar') /items(25) | |
254 | v ar siteUri = "/sites /IRBApplic ations/" + facilityN ame + "/"; | |
255 | v ar restUri = ""; | |
256 | ||
257 | v ar members hipRequest Uri = site Uri + "_ap i/web/site groups/get byname" + "('" + fac ilityTitle + "%20" | |
258 | + commit teeName + "%20Admini strators" + "')/CanC urrentUser ViewMember ship"; | |
259 | v ar request Uri = site Uri + rest Uri; | |
260 | ||
261 | v ar isMembe r = false; | |
262 | / / add the list item fields tha t should b e displaye d to the o nSuccess m ethod, for loop, res ults varia ble - add | |
263 | / / as many site colum ns as need ed | |
264 | / / and adju st the num ber of col umns in th e textarea box accor dingly | |
265 | v ar members hip; | |
266 | ||
267 | / ** | |
268 | * contains a collect ion of Fac ilityInfo objects. W hen create d it will have the C entral IRB pre-popul ated. | |
269 | * | |
270 | * @type {F acilityInf oCollectio n} | |
271 | */ | |
272 | v ar ficObj; | |
273 | / ** | |
274 | * Facility Info Objec t contains the Facil ity Inform ation for the retrie ved facili ty. | |
275 | * | |
276 | * @type {F acilityInf o} | |
277 | */ | |
278 | v ar fiObj; | |
279 | ||
280 | v ar proxyFo rFacilitie s; | |
281 | v ar committ eeDisplayN ame; | |
282 | v ar committ eeAcronym; | |
283 | ||
284 | i f (typeof ficObj === "undefine d") { | |
285 | ficObj = new Facil ityInfoCol lection(); | |
286 | } | |
287 | ||
288 | $ (document) | |
289 | .ready( | |
290 | funct ion() { | |
291 | $( "#RAMSCopy right").ap pend(RAMSC opyright); | |
292 | ||
293 | fi cObj | |
294 | .get( | |
295 | facili tyTitle, | |
296 | functi on(fiObj) { | |
297 | var committee Info = fiO bj.getComm itteeGroup (committee Name); | |
298 | pro xyForFacil ities = co mmitteeInf o.getProxy For(); | |
299 | com mitteeDisp layName = committeeI nfo.getCom mitteeName (); | |
300 | com mitteeAcro nym = comm itteeInfo. getCommitt eeAcronym( ); | |
301 | ||
302 | if (committee Name == "I RB") { | |
303 | restUri = "_api/web/ lists/getb ytitle('" + "Committ ee Calenda r')/items" ; | |
304 | } e lse { | |
305 | restUri = "_api/web/ lists/getb ytitle('" + committe eName + "% 20Calendar ')/items"; | |
306 | } | |
307 | req uestUri = siteUri + restUri; | |
308 | ||
309 | isM ember = fa lse; | |
310 | ||
311 | mem berCheck(f unction() { | |
312 | if (commit teeName == "IRB") { | |
313 | documen tRequestUr i = siteUr i | |
314 | + "_ api/web/ge tfolderbys erverrelat iveurl('" | |
315 | + "S hared%20Do cuments')/ Files?$sel ect=Modifi edBy/Id,Mo difiedBy/T itle,*&$ex pand=Modif iedBy"; | |
316 | } else if (committee Name == "I ACUC") { | |
317 | documen tRequestUr i = siteUr i + "_api/ web/getfol derbyserve rrelativeu rl('" | |
318 | + co mmitteeNam e | |
319 | + "D ocuments') /Files?$se lect=Modif iedBy/Id,M odifiedBy/ Title,*&$e xpand=Modi fiedBy"; | |
320 | } else if (committee Name == "S RS") { | |
321 | documen tRequestUr i = siteUr i + "_api/ web/getfol derbyserve rrelativeu rl('" | |
322 | + co mmitteeNam e | |
323 | + "D ocuments') /Files?$se lect=Modif iedBy/Id,M odifiedBy/ Title,*&$e xpand=Modi fiedBy"; | |
324 | } | |
325 | ||
326 | else { | |
327 | documen tRequestUr i = siteUr i + "_api/ web/getfol derbyserve rrelativeu rl('" | |
328 | + co mmitteeNam e | |
329 | + "D ocuments') /Files?$se lect=Modif iedBy/Id,M odifiedBy/ Title,*&$e xpand=Modi fiedBy"; | |
330 | } | |
331 | ||
332 | var pageHe ader = ""; | |
333 | ||
334 | var commit teeSchedul edMeetings Header = " "; | |
335 | ||
336 | if (commit teeName == "IRB") { | |
337 | committ eeSchedule dMeetingsH eader = "< a href=\"/ sites/IRBA pplication s/" + faci lityName + "/Lists/" | |
338 | + "F ullBoardRe viewCalend ar/Standar dView.aspx " + "\">" | |
339 | + "S cheduled M eetings" + "</a>"; | |
340 | } else if (committee Name == "R DC") { | |
341 | committ eeSchedule dMeetingsH eader = "< a href=\"/ sites/IRBA pplication s/" + faci lityName | |
342 | + "/ Lists/" + committeeN ame + "%20 Calendar/S tandardVie w.aspx" + "\">" | |
343 | + "S cheduled M eetings" + "</a>"; | |
344 | } else if (committee Name == "I ACUC") { | |
345 | committ eeSchedule dMeetingsH eader = "< a href=\"/ sites/IRBA pplication s/" + faci lityName | |
346 | + "/ Lists/" + committeeN ame + "%20 Calendar/S tandardVie w.aspx" + "\">" | |
347 | + "S cheduled M eetings" + "</a>"; | |
348 | } else { | |
349 | committ eeSchedule dMeetingsH eader = "< a href=\"/ sites/IRBA pplication s/" + faci lityName + "/Lists/" | |
350 | + co mmitteeNam e + "Calen dar/Standa rdView.asp x" + "\">" | |
351 | + "S cheduled M eetings" + "</a>"; | |
352 | } | |
353 | ||
354 | var commit teePastMee tingsHeade r = ""; | |
355 | ||
356 | if (commit teeName == "IRB") { | |
357 | committ eePastMeet ingsHeader = "<a hre f=\"/sites /IRBApplic ations/" + facilityN ame + "/Li sts/" | |
358 | + "F ullBoardRe viewCalend ar/Standar dView.aspx " + "\">" | |
359 | + "P ast Meetin gs" + "</a >"; | |
360 | } else if (committee Name == "R DC") { | |
361 | committ eePastMeet ingsHeader = "<a hre f=\"/sites /IRBApplic ations/" + facilityN ame | |
362 | + "/ Lists/" + committeeN ame + "%20 Calendar/S tandardVie w.aspx" + "\">" | |
363 | + "P ast Meetin gs" + "</a >"; | |
364 | } else if (committee Name == "I ACUC") { | |
365 | committ eePastMeet ingsHeader = "<a hre f=\"/sites /IRBApplic ations/" + facilityN ame | |
366 | + "/ Lists/" + committeeN ame + "%20 Calendar/S tandardVie w.aspx" + "\">" | |
367 | + "P ast Meetin gs" + "</a >"; | |
368 | } else { | |
369 | committ eePastMeet ingsHeader = "<a hre f=\"/sites /IRBApplic ations/" + facilityN ame + "/Li sts/" | |
370 | + co mmitteeNam e + "Calen dar/Standa rdView.asp x" + "\">" | |
371 | + "P ast Meetin gs" + "</a >"; | |
372 | } | |
373 | ||
374 | var commit teeMeeting MinutesHea der = ""; | |
375 | ||
376 | if (commit teeName == "IRB") { | |
377 | committ eeMeetingM inutesHead er = "<a h ref=\"/sit es/IRBAppl ications/" + facilit yName | |
378 | + "/ " + "Share d%20Docume nts" + "\" >" + "Meet ing Minute s" + "</a> "; | |
379 | } else { | |
380 | committ eeMeetingM inutesHead er = "<a h ref=\"/sit es/IRBAppl ications/" + facilit yName + "/ " + commit teeName | |
381 | + "D ocuments" + "\">" | |
382 | + "M eeting Min utes" + "< /a>"; | |
383 | } | |
384 | ||
385 | var commit teeDocumen tsHeader = ""; | |
386 | ||
387 | if (commit teeName == "IRB") { | |
388 | committ eeDocument sHeader = "<a href=\ "/sites/IR BApplicati ons/" + fa cilityName + "/" | |
389 | + "S hared%20Do cuments" + "\">" + " Documents" + "</a>"; | |
390 | } else { | |
391 | committ eeDocument sHeader = "<a href=\ "/sites/IR BApplicati ons/" + fa cilityName + "/" + c ommitteeNa me | |
392 | + "D ocuments" + "\">" | |
393 | + "D ocuments" + "</a>"; | |
394 | } | |
395 | ||
396 | //pageHead er = "Welc ome to the " + facil ityTitle + " " + com mitteeName + " commi ttee page" ; | |
397 | if ((commi tteeName = == "IACUC" ) || (comm itteeName === "IRB") || (commi tteeName = == "RDC") | |
398 | || (com mitteeName === "SRS" )) { | |
399 | pageHea der = faci lityTitle + "<br />" + committ eeName + " Committee "; | |
400 | } else { | |
401 | pageHea der = faci lityTitle + "<br />" + committ eeAcronym + " - " | |
402 | + co mmitteeDis playName + " (" + co mmitteeNam e + ")"; | |
403 | } | |
404 | $('#pageHe ader').app end(pageHe ader); | |
405 | $('#commit teeSchedul edMeetings Header').a ppend(comm itteeSched uledMeetin gsHeader); | |
406 | $('#commit teePastMee tingsHeade r').append (committee PastMeetin gsHeader); | |
407 | $('#commit teeMeeting MinutesHea der').appe nd(committ eeMeetingM inutesHead er); | |
408 | $('#commit teeDocumen tsHeader') .append(co mmitteeDoc umentsHead er); | |
409 | ||
410 | var studie sHeader = ""; | |
411 | if (commit teeName == "RDC") { | |
412 | studies Header = " Approved a nd Ready f or Review" ; | |
413 | ||
414 | } else { | |
415 | studies Header = " All Items" ; | |
416 | } | |
417 | $('#studie sHeader'). append(stu diesHeader ); | |
418 | ||
419 | $(document ).prop('ti tle', page Title); | |
420 | ||
421 | var commit teeSchedul edMeetingE ventLink = ""; | |
422 | ||
423 | if (commit teeName == "IRB") { | |
424 | committ eeSchedule dMeetingEv entLink = "/sites/IR BApplicati ons/" + fa cilityName | |
425 | + "/ Lists/Full BoardRevie wCalendar/ StandardVi ew.aspx"; | |
426 | } else if (committee Name == "R DC") { | |
427 | committ eeSchedule dMeetingEv entLink = "/sites/IR BApplicati ons/" + fa cilityName | |
428 | + "/ Lists/" + committeeN ame + "%20 Calendar/S tandardVie w.aspx"; | |
429 | } else if (committee Name == "I ACUC") { | |
430 | committ eeSchedule dMeetingEv entLink = "/sites/IR BApplicati ons/" + fa cilityName | |
431 | + "/ Lists/" + committeeN ame + "%20 Calendar/S tandardVie w.aspx"; | |
432 | } else { | |
433 | committ eeSchedule dMeetingEv entLink = "/sites/IR BApplicati ons/" + fa cilityName | |
434 | + "/ Lists/" + committeeN ame + "Cal endar/Stan dardView.a spx"; | |
435 | } | |
436 | ||
437 | var commit teeDocumen tsLink = " "; | |
438 | ||
439 | if (commit teeName == "IRB") { | |
440 | committ eeDocument sLink = "/ sites/IRBA pplication s/" + faci lityName | |
441 | + "/ Shared%20D ocuments"; | |
442 | } else { | |
443 | committ eeDocument sLink = "/ sites/IRBA pplication s/" + faci lityName + "/" | |
444 | + co mmitteeNam e + "Docum ents"; | |
445 | ||
446 | } | |
447 | ||
448 | // RDC | |
449 | if ((membe rship.RDCM ember) || ((committe eName == " IRB") && m embership. IRBMember) | |
450 | || ((co mmitteeNam e == "SRS" ) && membe rship.SRSM ember) | |
451 | || ((co mmitteeNam e == "IACU C") && mem bership.IA CUCMember) | |
452 | || ((co mmitteeNam e == "SC1" ) && membe rship.SC1M ember) | |
453 | || ((co mmitteeNam e == "SC2" ) && membe rship.SC2M ember) | |
454 | || ((co mmitteeNam e == "SC3" ) && membe rship.SC3M ember)) { | |
455 | $("#com mitteeSche duledMeeti ngEventLin k").attr(" href", | |
456 | comm itteeSched uledMeetin gEventLink ); | |
457 | $("#com mitteePast MeetingEve ntLink").a ttr("href" , committe eScheduled MeetingEve ntLink); | |
458 | $("#mee tingMinute sDocuments Link").att r("href", committeeD ocumentsLi nk); | |
459 | $("#com mitteeMeet ingMinutes DocumentsL ink").attr ("href", c ommitteeDo cumentsLin k); | |
460 | $("#com mitteeDocu mentsLink" ).attr("hr ef", commi tteeDocume ntsLink); | |
461 | } else { | |
462 | $("#com mitteeSche duledMeeti ngEventLin k").remove Attr("href "); | |
463 | $("#com mitteePast MeetingEve ntLink").r emoveAttr( "href"); | |
464 | $("#mee tingMinute sDocuments Link").rem oveAttr("h ref"); | |
465 | $("#com mitteeMeet ingMinutes DocumentsL ink").remo veAttr("hr ef"); | |
466 | $("#com mitteeDocu mentsLink" ).removeAt tr("href") ; | |
467 | } | |
468 | ||
469 | var fwaMou Link = "/s ites/IRBAp plications /Lists/" + "FWAMOU/" | |
470 | + "Stan dardView.a spx?Filter Field1=Sou rceSiteNam e&FilterVa lue1=" + f acilityTit le; | |
471 | ||
472 | var offsit eWaiversLi nk = ""; | |
473 | var advers eReportabl eEventLink = ""; | |
474 | var animal FacilityDo cumentsLin k = "/site s/IRBAppli cations/" + facility Name | |
475 | + "/AFD ocuments"; | |
476 | ||
477 | if (facili tyTitle == "Central IRB") { | |
478 | adverse Reportable EventLink = "/sites/ IRBApplica tions/List s/Applicat ion/Advers eReportabl eEvent.asp x?FilterFi eld1=Appli cationSite Type&Filte rValue1=" | |
479 | + "C entral"; | |
480 | offsite WaiversLin k = "/site s/IRBAppli cations/Li sts/Applic ation/Offs iteWaiverR equests.as px?FilterF ield1=Appl icationSit eType&Filt erValue1=" | |
481 | + "C entral"; | |
482 | ||
483 | } else { | |
484 | adverse Reportable EventLink = "/sites/ IRBApplica tions/List s/Applicat ion/Advers eReportabl eEvent.asp x?FilterFi eld1=Facil itiesLooku p&FilterVa lue1=" | |
485 | + fa cilityTitl e; | |
486 | offsite WaiversLin k = "/site s/IRBAppli cations/Li sts/Applic ation/Offs iteWaiverR equests.as px?FilterF ield1=Faci litiesLook up&FilterV alue1=" | |
487 | + fa cilityTitl e; | |
488 | } | |
489 | ||
490 | var tmsLin k = "/site s/IRBAppli cations/Li sts/TMS/Al lItems.asp x"; | |
491 | ||
492 | if ((membe rship.RDCM ember) || (membershi p.IRBMembe r) || (mem bership.SR SMember) | |
493 | || (mem bership.IA CUCMember) || (membe rship.SC1M ember) || (membershi p.SC2Membe r) | |
494 | || (mem bership.SC 3Member) | |
495 | // || (m embership. committeeC oordinator Member) || (membersh ip.adminis tratorsMem ber) | |
496 | || (mem bership.AO Member) || (membersh ip.LSAMemb er)) { | |
497 | $("#fwa mouLink"). attr("href ", fwaMouL ink); | |
498 | $("#off siteWaiver sLink").at tr("href", offsiteWa iversLink) ; | |
499 | $("#adv erseReport ableEventL ink").attr ("href", a dverseRepo rtableEven tLink); | |
500 | $("#tms Link").att r("href", tmsLink); | |
501 | ||
502 | GetComm itteeRoste rGroupDeta ils(); | |
503 | GetMeet ingListIte ms(); | |
504 | GetDocu mentListIt ems(); | |
505 | getAppl icationLis tItems(); | |
506 | ||
507 | } | |
508 | ||
509 | var $anima lFacilityL istItem = $("<li><a href='" + animalFaci lityDocume ntsLink + "'>" | |
510 | + "Anim al Facilit y Document s" + "</a> </li>"); | |
511 | if (commit teeName == "IACUC") { | |
512 | if ((me mbership.L SAMember) || (member ship.AFMMe mber)) { | |
513 | $("# links").ap pend($anim alFacility ListItem); | |
514 | } | |
515 | } | |
516 | }); | |
517 | }); | |
518 | }); | |
519 | ||
520 | f unction ge tParamValu e(param) { | |
521 | var urlP aramString = locatio n.search.s plit(param + "="); | |
522 | if (urlP aramString .length <= 1) { | |
523 | retur n ""; | |
524 | } else { | |
525 | var t mp = urlPa ramString[ 1].split(" &"); | |
526 | ||
527 | retur n tmp[0]; | |
528 | } | |
529 | ||
530 | } | |
531 | ||
532 | f unction Ge tMeetingLi stItems() { | |
533 | $.ajax({ | |
534 | url : requestUr i, | |
535 | type : "GET", | |
536 | heade rs : { | |
537 | "a ccept" : " applicatio n/json;oda ta=verbose ", | |
538 | "c ontent-typ e" : "appl ication/js on;odata=v erbose", | |
539 | "X -RequestDi gest" : $( "#_REQUEST DIGEST").v al() | |
540 | }, | |
541 | succe ss : onSuc cessMeetin gListItems , | |
542 | error : onError | |
543 | }); | |
544 | } | |
545 | ||
546 | f unction on SuccessMee tingListIt ems(data) { | |
547 | data = g etFixedStr ing(data); | |
548 | var item s = data.d .results; | |
549 | var titl e = ''; | |
550 | var even tdata = '' ; | |
551 | var loca tion = ''; | |
552 | var titl eLink = '' ; | |
553 | ||
554 | var toda y = new Da te(); | |
555 | ||
556 | for (var i = 0; i < items.le ngth; i++) { | |
557 | ||
558 | title = String( items[i].T itle); | |
559 | id = String(ite ms[i].Id); | |
560 | ||
561 | if (c ommitteeNa me == "IRB ") { | |
562 | ti tleLink = "<a href=\ "" + "/sit es/IRBAppl ications/" + facilit yName + "/ Lists/" | |
563 | + "FullBo ardReviewC alendar" + "/DispFor m.aspx?ID= " + id + " \">" + tit le + "</a> "; | |
564 | } els e if ((com mitteeName == "SRS") || (commi tteeName = = "SC1") | | (committ eeName == "SC2") || (committee Name == "S C3")) { | |
565 | ti tleLink = "<a href=\ "" + "/sit es/IRBAppl ications/" + facilit yName + "/ Lists/" + committeeN ame | |
566 | + "Calend ar/DispFor m.aspx?ID= " + id + " \">" + tit le + "</a> "; | |
567 | } els e { | |
568 | ti tleLink = "<a href=\ "" + "/sit es/IRBAppl ications/" + facilit yName + "/ Lists/" + committeeN ame | |
569 | + " Calen dar/DispFo rm.aspx?ID =" + id + "\">" + ti tle + "</a >"; | |
570 | } | |
571 | ||
572 | event date = Str ing(items[ i].EventDa te); | |
573 | var t emp = new Date(event date); | |
574 | var f ormattedEv entDate = ""; | |
575 | ||
576 | var t ime = new Date(event date); | |
577 | time = time.toL ocaleStrin g('en-US', { | |
578 | ho ur : 'nume ric', | |
579 | mi nute : 'nu meric', | |
580 | ho ur12 : tru e | |
581 | }); | |
582 | forma ttedEventD ate = temp .getMonth( ) + 1 + "/ " + temp.g etDate() + "/" + tem p.getFullY ear() + " " + time; | |
583 | ||
584 | // va r agendaLi nk = "/sit es/IRBAppl ications/" + facilit yName + "/ SitePages/ AgendaRepo rt.aspx?Cu stomID=" | |
585 | // + items[i].I d + "&comm itteeName= " + commit teeName; | |
586 | var a gendaLink = "\"#\" o nClick=\"g enerateAge ndaReport( 'Agenda', '" + facil ityName + "', '" | |
587 | + committeeN ame + "', '" + items [i].Id + " ');\""; | |
588 | var d isplayGene rateAgenda Report = " <a href=" + agendaLi nk + ">" + "Generate Agenda Re port" + "< /a>"; | |
589 | ||
590 | // va r minutesL ink = "/si tes/IRBApp lications/ " + facili tyName + " /SitePages /AgendaRep ort.aspx?C ustomID=" | |
591 | // + items[i].I d + "&comm itteeName= " + commit teeName + "&reportTy pe=Minutes "; | |
592 | var m inutesLink = "\"#\" onClick=\" generateAg endaReport ('Minutes' , '" + fac ilityName + "', '" | |
593 | + committeeN ame + "', '" + items [i].Id + " ');\""; | |
594 | var d isplayGene rateMinute sReport = "<a href=" + minutes Link + ">" + "Genera te Minutes Report" + "</a>"; | |
595 | ||
596 | locat ion = Stri ng(items[i ].Location ); | |
597 | if (l ocation == "null") { | |
598 | lo cation = " "; | |
599 | } | |
600 | ||
601 | var c alendarEve nt = new C alendarEve nt(titleLi nk, locati on, format tedEventDa te, | |
602 | di splayGener ateAgendaR eport, dis playGenera teMinutesR eport); | |
603 | ||
604 | if (t emp.getTim e() > toda y.getTime( )) { | |
605 | sc heduledMee tingsList. push(calen darEvent); | |
606 | } els e { | |
607 | pa stMeetings List.push( calendarEv ent); | |
608 | } | |
609 | } | |
610 | ||
611 | $('#sche duledMeeti ngsListTab le').DataT able({ | |
612 | data : schedule dMeetingsL ist, | |
613 | colum ns : [ { | |
614 | da ta : 'Titl e' | |
615 | }, { | |
616 | da ta : 'Loca tion' | |
617 | }, { | |
618 | da ta : 'Star tTime' | |
619 | }, { | |
620 | da ta : 'Gene rateAgenda ' | |
621 | }, { | |
622 | da ta : 'Gene rateMinute s' | |
623 | } | |
624 | ] | |
625 | }); | |
626 | ||
627 | $('#past MeetingsLi stTable'). DataTable( { | |
628 | "aaSo rting" : [ [ 1, "asc " | |
629 | ] | |
630 | ], | |
631 | data : pastMeet ingsList, | |
632 | colum ns : [ { | |
633 | da ta : 'Titl e' | |
634 | }, { | |
635 | da ta : 'Star tTime' | |
636 | }, { | |
637 | da ta : 'Gene rateAgenda ' | |
638 | }, { | |
639 | da ta : 'Gene rateMinute s' | |
640 | } | |
641 | ] | |
642 | }); | |
643 | } | |
644 | ||
645 | f unction Ge tDocumentL istItems() { | |
646 | $.ajax({ | |
647 | url : documentR equestUri, | |
648 | type : "GET", | |
649 | heade rs : { | |
650 | "a ccept" : " applicatio n/json;oda ta=verbose ", | |
651 | "c ontent-typ e" : "appl ication/js on;odata=v erbose", | |
652 | "X -RequestDi gest" : $( "#_REQUEST DIGEST").v al() | |
653 | }, | |
654 | succe ss : onSuc cessDocume ntListItem s, | |
655 | error : onError | |
656 | }); | |
657 | } | |
658 | ||
659 | f unction on SuccessDoc umentListI tems(data) { | |
660 | data = g etFixedStr ing(data); | |
661 | var item s = data.d .results; | |
662 | var name = ''; | |
663 | var name Location = ''; | |
664 | var name Link = ''; | |
665 | ||
666 | var modi fied = ''; | |
667 | var modi fiedBy = ' '; | |
668 | var modi fiedById = ''; | |
669 | var modi fiedByLink = ''; | |
670 | ||
671 | for (var i = 0; i < items.le ngth; i++) { | |
672 | name = String(i tems[i].Na me); | |
673 | ||
674 | nameL ocation = String(ite ms[i].Serv erRelative Url); | |
675 | nameL ink = "<a href=\"" + nameLocat ion + "\"> " + name + "</a>"; | |
676 | ||
677 | modif ied = Stri ng(items[i ].TimeLast Modified); | |
678 | var m odifiedDat e = new Da te(items[i ].TimeLast Modified); | |
679 | var f ormattedMo difiedDate String = m onthNames[ modifiedDa te.getMont h()] + " " + modifie dDate.getD ate(); | |
680 | ||
681 | modif iedBy = it ems[i].Mod ifiedBy.Ti tle; | |
682 | modif iedById = items[i].M odifiedBy. Id; | |
683 | modif iedByLink = "<a href =\"/sites/ IRBApplica tions/_lay outs/15/us erdisp.asp x?ID=" + m odifiedByI d + "\">" | |
684 | + modifiedBy + "</a>"; | |
685 | ||
686 | var n ewDocument Item = new DocumentI tem(nameLi nk, format tedModifie dDateStrin g, modifie dByLink); | |
687 | commi tteeDocume ntsList.pu sh(newDocu mentItem); | |
688 | ||
689 | if (n ame.indexO f("Minute" ) != -1) { | |
690 | me etingMinut esDocument sList.push (newDocume ntItem); | |
691 | } | |
692 | } | |
693 | ||
694 | $('#meet ingMinutes ListTable' ).DataTabl e({ | |
695 | "aaSo rting" : [ [ 1, "asc " | |
696 | ] | |
697 | ], | |
698 | data : meetingM inutesDocu mentsList, | |
699 | colum ns : [ { | |
700 | da ta : 'Name ' | |
701 | }, { | |
702 | da ta : 'Modi fied' | |
703 | }, { | |
704 | da ta : 'Modi fiedBy' | |
705 | } | |
706 | ] | |
707 | }); | |
708 | ||
709 | $('#comm itteeDocum entsListTa ble').Data Table({ | |
710 | "aaSo rting" : [ [ 1, "asc " | |
711 | ] | |
712 | ], | |
713 | data : committe eDocuments List, | |
714 | colum ns : [ { | |
715 | da ta : 'Name ' | |
716 | }, { | |
717 | da ta : 'Modi fied' | |
718 | }, { | |
719 | da ta : 'Modi fiedBy' | |
720 | } | |
721 | ] | |
722 | }); | |
723 | } | |
724 | ||
725 | f unction on Error(erro r) { | |
726 | console. log(error) ; | |
727 | alert("T his is a w ork in pro gress and will be de livered in a future release"); | |
728 | } | |
729 | ||
730 | f unction Ge tCommittee RosterGrou pDetails() { | |
731 | var comm itteeRoste rLink = "/ sites/IRBA pplication s/Lists/" + "Committ eeRoster/" | |
732 | + "Co mmitteeRos ter.aspx?F ilterField 1=Faciliti esLookup&F ilterValue 1=" + faci lityTitle | |
733 | + "&F ilterField 2=Committe eMembershi p&FilterVa lue2=" + c ommitteeNa me; | |
734 | ||
735 | $("#comm itteeRoste rLink").at tr("href", committee RosterLink ); | |
736 | ||
737 | } | |
738 | ||
739 | f unction Ca lendarEven t(Title, L ocation, S tartTime, GenerateAg enda, Gene rateMinute s) { | |
740 | this.Tit le = Title ; | |
741 | this.Loc ation = Lo cation; | |
742 | this.Sta rtTime = S tartTime; | |
743 | this.Gen erateAgend a = Genera teAgenda; | |
744 | this.Gen erateMinut es = Gener ateMinutes ; | |
745 | } | |
746 | ||
747 | f unction Do cumentItem (Title, Mo dified, Mo difiedBy) { | |
748 | this.Nam e = Title; | |
749 | this.Mod ified = Mo dified; | |
750 | this.Mod ifiedBy = ModifiedBy ; | |
751 | } | |
752 | ||
753 | f unction ge tApplicati onListItem s() { | |
754 | var comm itteeFacil ityQuery = ""; | |
755 | var faci litiesPart = ""; | |
756 | ||
757 | for (var i = 0; i < proxyFor Facilities .length; i ++) { | |
758 | var f acility = proxyForFa cilities[i ]; | |
759 | facil itiesPart += " or Fa cilitiesLo okup/ID eq " + "'" + facility + "'"; | |
760 | ||
761 | } | |
762 | var appr ovedFacili tyQuery = "/sites/IR BApplicati ons/_api/W eb/lists/g etbytitle( 'Applicati on')/items ?&$select= StudyIDLin k, StudyTi tle, Princ ipalInvest igator/ID, Principal Investigat or/Title,A pplication Type, Rene walDate, A pplication Status, Fa cilitiesLo okup/ID, F acilitiesL ookup/Titl e&$expand= PrincipalI nvestigato r,Faciliti esLookup&$ filter=Fac ilitiesLoo kup/Title eq " | |
763 | + "'" | |
764 | + fac ilityTitle | |
765 | + "'" | |
766 | + fac ilitiesPar t | |
767 | + " a nd (substr ingof('App roved',App licationSt atus) or A pplication Status eq 'Under Rev iew')" | |
768 | + " a nd ((IRBRe viewRequir ed eq 1 an d IRBAppro vedDate ge datetime' 1900-01-01 T00:00:00Z ') or (IRB ReviewRequ ired ne 1) )" | |
769 | + " a nd ((IACUC ReviewRequ ired eq 1 and IACUCA pprovedDat e ge datet ime'1900-0 1-01T00:00 :00Z') or (IACUCRevi ewRequired ne 1))" | |
770 | + " a nd ((SRSRe viewRequir ed eq 1 an d SRSAppro vedDate ge datetime' 1900-01-01 T00:00:00Z ') or (SR SReviewReq uired ne 1 ))" | |
771 | + " a nd ((SC1Re viewRequir ed eq 1 an d SC1Appro vedDate ge datetime' 1900-01-01 T00:00:00Z ') or (SC 1ReviewReq uired ne 1 ))" | |
772 | + " a nd ((SC2Re viewRequir ed eq 1 an d SC2Appro vedDate ge datetime' 1900-01-01 T00:00:00Z ') or (SC2 ReviewRequ ired ne 1) )" | |
773 | + " a nd ((SC3Re viewRequir ed eq 1 an d SC3Appro vedDate ge datetime' 1900-01-01 T00:00:00Z ') or (SC3 ReviewRequ ired ne 1) )" | |
774 | ||
775 | var stan dardFacili tyQuery = "/sites/IR BApplicati ons/_api/W eb/lists/g etbytitle( 'Applicati on')/items ?&$select= StudyIDLin k, StudyTi tle, Princ ipalInvest igator/ID, Principal Investigat or/Title,A pplication Type, Rene walDate, A pplication Status, Fa cilitiesLo okup/ID, F acilitiesL ookup/Titl e&$expand= PrincipalI nvestigato r,Faciliti esLookup&$ filter=Fac ilitiesLoo kup/Title eq " | |
776 | + "'" | |
777 | + fac ilityTitle | |
778 | + "'" | |
779 | + fac ilitiesPar t | |
780 | + " a nd " | |
781 | + com mitteeName | |
782 | + "Re viewRequir ed eq '1'" | |
783 | + " a nd Applica tionStatus ne 'Draft '"; | |
784 | ||
785 | var appr ovedCIRBQu ery = "/si tes/IRBApp lications/ _api/Web/l ists/getby title('App lication') /items?&$s elect=Stud yIDLink, S tudyTitle, Principal Investigat or/ID, Pri ncipalInve stigator/T itle,Appli cationType , RenewalD ate, Appli cationStat us, Facili tiesLookup /ID, Facil itiesLooku p/Title&$e xpand=Prin cipalInves tigator,Fa cilitiesLo okup&$filt er=Applica tionSiteTy pe eq " | |
786 | + "'" | |
787 | + "Ce ntral" | |
788 | + "'" | |
789 | + " a nd (substr ingof('App roved',App licationSt atus) or A pplication Status eq 'Under Rev iew')" | |
790 | + " a nd ((IRBRe viewRequir ed eq 1 an d IRBAppro vedDate ge datetime' 1900-01-01 T00:00:00Z ') or (IRB ReviewRequ ired ne 1) )" | |
791 | + " a nd ((IACUC ReviewRequ ired eq 1 and IACUCA pprovedDat e ge datet ime'1900-0 1-01T00:00 :00Z') or (IACUCRevi ewRequired ne 1))" | |
792 | + " a nd ((SRSRe viewRequir ed eq 1 an d SRSAppro vedDate ge datetime' 1900-01-01 T00:00:00Z ') or (SR SReviewReq uired ne 1 ))" | |
793 | + " a nd ((SC1Re viewRequir ed eq 1 an d SC1Appro vedDate ge datetime' 1900-01-01 T00:00:00Z ') or (SC 1ReviewReq uired ne 1 ))" | |
794 | + " a nd ((SC2Re viewRequir ed eq 1 an d SC2Appro vedDate ge datetime' 1900-01-01 T00:00:00Z ') or (SC2 ReviewRequ ired ne 1) )" | |
795 | + " a nd ((SC3Re viewRequir ed eq 1 an d SC3Appro vedDate ge datetime' 1900-01-01 T00:00:00Z ') or (SC3 ReviewRequ ired ne 1) )" | |
796 | ||
797 | var stan dardCIRBQu ery = "/si tes/IRBApp lications/ _api/Web/l ists/getby title('App lication') /items?&$s elect=Stud yIDLink, S tudyTitle, Principal Investigat or/ID, Pri ncipalInve stigator/T itle,Appli cationType , RenewalD ate, Appli cationStat us, Facili tiesLookup /ID, Facil itiesLooku p/Title&$e xpand=Prin cipalInves tigator,Fa cilitiesLo okup&$filt er=Applica tionSiteTy pe eq " | |
798 | + "'" | |
799 | + "Ce ntral" | |
800 | + "'" | |
801 | + " a nd " | |
802 | + com mitteeName | |
803 | + "Re viewRequir ed eq '1'" | |
804 | + " a nd Applica tionStatus ne 'Draft '"; | |
805 | ||
806 | if (faci lityTitle == "Centra l IRB") { | |
807 | if (c ommitteeNa me == "RDC ") { | |
808 | co mmitteeFac ilityQuery = approve dCIRBQuery ; | |
809 | ||
810 | } els e { | |
811 | co mmitteeFac ilityQuery = standar dCIRBQuery ; | |
812 | } | |
813 | } else { | |
814 | if (c ommitteeNa me == "RDC ") { | |
815 | co mmitteeFac ilityQuery = approve dFacilityQ uery; | |
816 | } els e { | |
817 | co mmitteeFac ilityQuery = standar dFacilityQ uery; | |
818 | } | |
819 | } | |
820 | ||
821 | $.ajax({ | |
822 | url : committee FacilityQu ery, | |
823 | type : "GET", | |
824 | heade rs : { | |
825 | "a ccept" : " applicatio n/json;oda ta=verbose ", | |
826 | "c ontent-typ e" : "appl ication/js on;odata=v erbose", | |
827 | "X -RequestDi gest" : $( "#_REQUEST DIGEST").v al() | |
828 | }, | |
829 | succe ss : onSuc cessApplic ationListI tems, | |
830 | error : onError | |
831 | }); | |
832 | } | |
833 | f unction on SuccessApp licationLi stItems(da ta) { | |
834 | //Removi ng html wi ll prevent stored li nks from b eing gener ated | |
835 | //data = getFixedS tring(data ); | |
836 | var item s = data.d .results; | |
837 | for (var i = 0; i < items.le ngth; i++) { | |
838 | var m ysitesLink = 'http:/ /vaww.' + hostname.s ubstring(5 ) | |
839 | + '/sites/IR BApplicati ons/_layou ts/15/user disp.aspx? ID='; | |
840 | var s tudyIdLink = items[i ].StudyIDL ink; | |
841 | ||
842 | var s tudyTitle = items[i] .StudyTitl e; | |
843 | study Title = re placer(nul l, studyTi tle); | |
844 | ||
845 | var p rincipalIn vestigator = items[i ].Principa lInvestiga tor; | |
846 | ||
847 | var p rincipalIn vestigator Name = ""; | |
848 | ||
849 | var i d = ""; | |
850 | ||
851 | if (p rincipalIn vestigator != null) { | |
852 | pr incipalInv estigatorN ame = prin cipalInves tigator; | |
853 | pr incipalInv estigatorN ame = prin cipalInves tigator.Ti tle; | |
854 | id = princip alInvestig ator.ID; | |
855 | my sitesLink += id; | |
856 | } | |
857 | ||
858 | var p rincipalIn vestigator NameLink = "<a href= " + mysite sLink; | |
859 | pri ncipalInve stigatorNa meLink += ">" | |
860 | + principalI nvestigato rName + "< /a>"; | |
861 | var a pplication Type = ite ms[i].Appl icationTyp e; | |
862 | appli cationType = replace r(null, ap plicationT ype); | |
863 | var a pplication Status = i tems[i].Ap plicationS tatus; | |
864 | ||
865 | if (a pplication Status == undefined) { | |
866 | ap plicationS tatus = "" ; | |
867 | } | |
868 | ||
869 | var r enewalDate = items[i ].RenewalD ate; | |
870 | renew alDate = r eplacer(nu ll, renewa lDate); | |
871 | ||
872 | var m odifiedRen ewalDate = new Date( renewalDat e); | |
873 | ||
874 | var t ime = new Date(renew alDate); | |
875 | time = time.toL ocaleStrin g('en-US', { | |
876 | ho ur : 'nume ric', | |
877 | mi nute : 'nu meric', | |
878 | ho ur12 : tru e | |
879 | }); | |
880 | ||
881 | if (m odifiedRen ewalDate.g etFullYear () != 1969 ) { | |
882 | mo difiedRene walDate = modifiedRe newalDate. getMonth() + 1 + "/" + modifie dRenewalDa te.getDate () + "/" | |
883 | + modifie dRenewalDa te.getFull Year() + " " + time; | |
884 | } els e { | |
885 | mo difiedRene walDate = ""; | |
886 | } | |
887 | ||
888 | var f acilityLoo kup = item s[i].Facil itiesLooku p; | |
889 | ||
890 | if (( typeof fac ilityLooku p === "und efined") | | (typeof facilityLo okup.Title === "unde fined")) { | |
891 | fa cilityLook up = ""; | |
892 | ||
893 | } els e { | |
894 | fa cilityLook up = facil ityLookup. Title; | |
895 | fa cilityLook up = repla cer(null, facilityLo okup); | |
896 | ||
897 | } | |
898 | ||
899 | var n ewApplicat ion = new Applicatio n(studyIdL ink, study Title, pri ncipalInve stigatorNa meLink, | |
900 | ap plicationT ype, appli cationStat us, modifi edRenewalD ate, facil ityLookup) ; | |
901 | ||
902 | appli cationList .push(newA pplication ); | |
903 | } | |
904 | ||
905 | $('#appl icationLis t').DataTa ble({ | |
906 | data : applicat ionList, | |
907 | colum ns : [ { | |
908 | da ta : 'stud yIdLink' | |
909 | }, { | |
910 | da ta : 'stud yTitle' | |
911 | }, { | |
912 | da ta : 'prin cipalInves tigator' | |
913 | }, { | |
914 | da ta : 'appl icationTyp e' | |
915 | }, { | |
916 | da ta : 'appl icationSta tus' | |
917 | }, { | |
918 | da ta : 'rene walDate' | |
919 | }, { | |
920 | da ta : 'faci litiesLook up' | |
921 | } | |
922 | ||
923 | ] | |
924 | }); | |
925 | ||
926 | } | |
927 | ||
928 | f unction Ap plication( studyIdLin k, studyTi tle, princ ipalInvest igator, ap plicationT ype, appli cationStat us, | |
929 | renewalD ate, facil itiesLooku p) { | |
930 | ||
931 | this.stu dyIdLink = studyIdLi nk; | |
932 | this.stu dyTitle = studyTitle ; | |
933 | this.pri ncipalInve stigator = principal Investigat or; | |
934 | this.app licationTy pe = appli cationType ; | |
935 | this.app licationSt atus = app licationSt atus; | |
936 | this.ren ewalDate = renewalDa te; | |
937 | this.fac ilitiesLoo kup = faci litiesLook up; | |
938 | ||
939 | } | |
940 | ||
941 | f unction me mberCheck( callback) { | |
942 | var curr entUrl = w indow.loca tion.href; | |
943 | var spli tUrl = cur rentUrl.sp lit(".html ")[0]; | |
944 | var faci lityUrl = ""; | |
945 | var user ; | |
946 | membersh ip = {}; | |
947 | membersh ip.RDCMemb er = false ; | |
948 | membersh ip.IRBMemb er = false ; | |
949 | membersh ip.SRSMemb er = false ; | |
950 | membersh ip.IACUCMe mber = fal se; | |
951 | membersh ip.SC1Memb er = false ; | |
952 | membersh ip.SC2Memb er = false ; | |
953 | membersh ip.SC3Memb er = false ; | |
954 | membersh ip.AOMembe r = false; | |
955 | membersh ip.LSAMemb er = false ; | |
956 | membersh ip.RCOMemb er = false ; | |
957 | membersh ip.Liaison sMember = false; | |
958 | membersh ip.AFMMemb er = false ; | |
959 | ||
960 | if (spli tUrl != "" ) { | |
961 | if (s plitUrl.in dexOf("/si tes/IRBApp lications/ ") != -1) { | |
962 | sp litUrl = s plitUrl.sp lit("/site s/IRBAppli cations/") [1]; | |
963 | if (splitUrl .indexOf(" /SitePages /") != -1) { | |
964 | facilityU rl = split Url.split( "/SitePage s/")[0]; | |
965 | } | |
966 | } | |
967 | } | |
968 | ||
969 | $.ajax({ | |
970 | async : false, | |
971 | type : 'GET', | |
972 | url : ("/sites/ IRBApplica tions/_api /Web/Curre ntUser/Gro ups"), | |
973 | heade rs : { | |
974 | "a ccept" : " applicatio n/json;oda ta=verbose " | |
975 | }, | |
976 | dataT ype : 'jso n', | |
977 | succe ss : funct ion(json) { | |
978 | js on = getFi xedString( json); | |
979 | us er = json. d.results; | |
980 | ||
981 | fo r (var i = 0; i < us er.length; i++) { | |
982 | if (user[ i].Title.i ndexOf(gro upPart + " " + "RDC" ) > -1) { | |
983 | member ship.RDCMe mber = tru e; | |
984 | } | |
985 | if (user[ i].Title.i ndexOf(gro upPart + " " + "IRB" ) > -1) { | |
986 | member ship.IRBMe mber = tru e; | |
987 | } | |
988 | if (user[ i].Title.i ndexOf(gro upPart + " " + "SRS" ) > -1) { | |
989 | member ship.SRSMe mber = tru e; | |
990 | } | |
991 | if (user[ i].Title.i ndexOf(gro upPart + " " + "IACU C") > -1) { | |
992 | member ship.IACUC Member = t rue; | |
993 | } | |
994 | if (user[ i].Title.i ndexOf(gro upPart + " " + "SC1" ) > -1) { | |
995 | member ship.SC1Me mber = tru e; | |
996 | } | |
997 | if (user[ i].Title.i ndexOf(gro upPart + " " + "SC2" ) > -1) { | |
998 | member ship.SC2Me mber = tru e; | |
999 | } | |
1000 | if (user[ i].Title.i ndexOf(gro upPart + " " + "SC3" ) > -1) { | |
1001 | member ship.SC3Me mber = tru e; | |
1002 | } | |
1003 | if ((user [i].Title. indexOf("A O") > -1) | |
1004 | || (us er[i].Titl e.indexOf( groupPart + " " + "A dministrat ive Office rs") > -1) ) { | |
1005 | member ship.AOMem ber = true ; | |
1006 | } | |
1007 | if (user[ i].Title.i ndexOf(gro upPart + " " + "Loca l Site Adm inistrator s") > -1) { | |
1008 | member ship.LSAMe mber = tru e; | |
1009 | } | |
1010 | if ((user [i].Title. indexOf("R CO") > -1) | |
1011 | || (us er[i].Titl e.indexOf( groupPart + " " + "R esearch Co mpliance O fficers") > -1)) { | |
1012 | member ship.RCOMe mber = tru e; | |
1013 | } | |
1014 | if (user[ i].Title.i ndexOf(gro upPart + " Local Sit e Liaisons ") > -1) { | |
1015 | member ship.Liais onsMember = true; | |
1016 | } | |
1017 | ||
1018 | if (user[ i].Title.i ndexOf(gro upPart + " Animal Fa cility Man agers") > -1) { | |
1019 | member ship.AFMMe mber = tru e; | |
1020 | } | |
1021 | } | |
1022 | ca llback(mem bership); | |
1023 | } | |
1024 | }); | |
1025 | //return membershi p; | |
1026 | } | |
1027 | ||
1028 | / / -------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- -------- | |
1029 | / / From Gen erateAgend aReport | |
1030 | // https:/ / DNS . URL /sites/IRB Applicatio ns/SitePag es/Committ ee.html | |
1031 | / / ?facilit yName=Miam i&facility Title=Miam i&committe eName=IRB& groupPart= Miami | |
1032 | // https:/ / DNS . URL /sites/IRB Applicatio ns/Miami/S itePages/A gendaRepor t.aspx | |
1033 | / / ?CustomI D=23&commi tteeName=I RB | |
1034 | / / var load File = fun ction(url, callback) { | |
1035 | / / JSZipUti ls.getBina ryContent( url, callb ack); | |
1036 | / / }; | |
1037 | v ar opts = { | |
1038 | lines : 12, // The number of lines to draw | |
1039 | length : 7, // The length of each line | |
1040 | width : 5, // The line thick ness | |
1041 | radius : 10, // Th e radius o f the inne r circle | |
1042 | color : '#fff', // #rbg or # rrggbb | |
1043 | speed : 1, // Roun ds per sec ond | |
1044 | trail : 66, // Aft erglow per centage | |
1045 | shadow : true | |
1046 | / / Whether to render a shadow | |
1047 | } ; | |
1048 | ||
1049 | / / checkSou rceParamet er(); | |
1050 | v ar target = document .getElemen tById('spi nnerdiv'); | |
1051 | ||
1052 | v ar spinner = new Spi nner(opts) .spin(targ et); | |
1053 | $ (target).d ata('spinn er', spinn er); | |
1054 | ||
1055 | v ar itemInf o; // data after JSO N is parse d into dic tionary | |
1056 | v ar current Url = wind ow.locatio n.href; | |
1057 | v ar studyAr ray = []; | |
1058 | v ar minuteA rray = []; | |
1059 | v ar agendaC olumns = { }; | |
1060 | / / var comm itteeName = ""; | |
1061 | v ar committ eeListUrl = ""; | |
1062 | v ar agendaM inutesTitl e = ""; | |
1063 | v ar reportT ype = ""; | |
1064 | v ar applica tionRecord ID; | |
1065 | ||
1066 | / / generate AgendaRepo rt(current Url); | |
1067 | ||
1068 | f unction ge nerateAgen daReport(r eportType, facilityN ame, commi tteeName, itemID) { | |
1069 | // const ants, but we can't u se the con st datatyp e until IE supports it. | |
1070 | var RDCC ALENDAR = "RDC Calen dar"; | |
1071 | var IACU CCALENDAR = "IACUC C alendar"; | |
1072 | var IRBC ALENDAR = "Committee Calendar" ; | |
1073 | var SRSC ALENDAR = "SRS Calen dar"; | |
1074 | var SC1C ALENDAR = "SC1 Calen dar"; | |
1075 | var SC2C ALENDAR = "SC2 Calen dar"; | |
1076 | var SC3C ALENDAR = "SC3 Calen dar"; | |
1077 | ||
1078 | var cale ndar; | |
1079 | var para meterStrin g; | |
1080 | ||
1081 | this.rep ortType = reportType ; | |
1082 | ||
1083 | var real Url = site Url.substr ing(0, sit eUrl.index Of("SitePa ges") - 1) + "/" + f acilityNam e; | |
1084 | // var i temID = ge tQueryStri ngParamete r('CustomI D');// cur rUrl.subst ring(currU rl.indexOf ("ID=")+3) ; | |
1085 | var list Url = ""; | |
1086 | // commi tteeName = getQueryS tringParam eter('comm itteeName' ); | |
1087 | // repor tType=getQ ueryString Parameter( 'reportTyp e'); | |
1088 | agendaMi nutesTitle = committ eeName; | |
1089 | ||
1090 | if (comm itteeName == "RDC") { | |
1091 | calen dar = RDCC ALENDAR; | |
1092 | param eterString = "?$sele ct=Title,E ventDate,C ommitteeAt tendees/ID ,Committee Attendees/ Title,Even tAttendees /ID,EventA ttendees/T itle,Appro vedApplica tionsLooku p/ID, Auth or/Title&$ expand=Com mitteeAtte ndees,Appr ovedApplic ationsLook up,EventAt tendees, A uthor"; | |
1093 | } else i f (committ eeName == "IACUC") { | |
1094 | calen dar = IACU CCALENDAR; | |
1095 | param eterString = "?$sele ct=Title,E ventDate,C ommitteeAt tendees/ID ,Committee Attendees/ Title,Even tAttendees /ID,EventA ttendees/T itle,Submi ttedApplic ationLooku p/ID,IACUC MeetingMin uteLookup/ ID, Author /Title&$ex pand=Commi tteeAttend ees,Submit tedApplica tionLookup ,EventAtte ndees, IAC UCMeetingM inuteLooku p, Author" ; | |
1096 | } else i f (committ eeName == "IRB") { | |
1097 | calen dar = IRBC ALENDAR; | |
1098 | param eterString = "?$sele ct=Title,E ventDate,C ommitteeAt tendees/ID ,Committee Attendees/ Title,Part icipantsPi cker/ID,Pa rticipants Picker/Tit le,Submitt edApplicat ionLookup/ ID,Committ eeMeetingM inuteLooku p/ID,Autho r/Title&$e xpand=Comm itteeAtten dees,Submi ttedApplic ationLooku p,Particip antsPicker ,Committee MeetingMin uteLookup, Author"; | |
1099 | } else i f (committ eeName == "SRS") { | |
1100 | calen dar = SRSC ALENDAR; | |
1101 | param eterString = "?$sele ct=Title,E ventDate,E ventCommit teeAttende es/ID,Even tCommittee Attendees/ Title,Even tAttendees /ID,EventA ttendees/T itle,Submi ttedApplic ationLooku p/ID, SRSM eetingMinu teLookup/I D,Author/T itle&$expa nd=EventCo mmitteeAtt endees,Sub mittedAppl icationLoo kup,EventA ttendees,S RSMeetingM inuteLooku p, Author" ; | |
1102 | } else i f (committ eeName == "SC1") { | |
1103 | calen dar = SC1C ALENDAR; | |
1104 | param eterString = "?$sele ct=Title,E ventDate,E ventCommit teeAttende es/ID,Even tCommittee Attendees/ Title,Even tAttendees /ID,EventA ttendees/T itle,Submi ttedApplic ationLooku p/ID, SC1M eetingMinu teLookup/I D,Author/T itle&$expa nd=EventCo mmitteeAtt endees,Sub mittedAppl icationLoo kup,EventA ttendees,S C1MeetingM inuteLooku p, Author" ; | |
1105 | } else i f (committ eeName == "SC2") { | |
1106 | calen dar = SC2C ALENDAR; | |
1107 | param eterString = "?$sele ct=Title,E ventDate,E ventCommit teeAttende es/ID,Even tCommittee Attendees/ Title,Even tAttendees /ID,EventA ttendees/T itle,Submi ttedApplic ationLooku p/ID, SC2M eetingMinu teLookup/I D,Author/T itle&$expa nd=EventCo mmitteeAtt endees,Sub mittedAppl icationLoo kup,EventA ttendees,S C2MeetingM inuteLooku p, Author" ; | |
1108 | } else i f (committ eeName == "SC3") { | |
1109 | calen dar = SC3C ALENDAR; | |
1110 | param eterString = "?$sele ct=Title,E ventDate,E ventCommit teeAttende es/ID,Even tCommittee Attendees/ Title,Even tAttendees /ID,EventA ttendees/T itle,Submi ttedApplic ationLooku p/ID, SC3M eetingMinu teLookup/I D,Author/T itle&$expa nd=EventCo mmitteeAtt endees,Sub mittedAppl icationLoo kup,EventA ttendees,S C3MeetingM inuteLooku p, Author" ; | |
1111 | } else { | |
1112 | conso le.log("Th e committe e " + comm itteeName + " is not configure d correctl y."); | |
1113 | alert ("The comm ittee " + committeeN ame | |
1114 | + " is not c onfigured correctly. Please co ntact the system adm inistrator ."); | |
1115 | retur n; | |
1116 | } | |
1117 | ||
1118 | committe eListUrl = realUrl + "/_api/we b/lists/ge tbytitle(' " + calend ar + "')/i tems(" + i temID + ") " | |
1119 | + par ameterStri ng; | |
1120 | $.ajax({ | |
1121 | url : committee ListUrl, | |
1122 | metho d : "GET", | |
1123 | heade rs : { | |
1124 | "A ccept" : " applicatio n/json; od ata=verbos e" | |
1125 | }, | |
1126 | succe ss : funct ion(data) { | |
1127 | // mapping t he results | |
1128 | ma pDataObjec t(data); | |
1129 | }, | |
1130 | error : functio n(data) { | |
1131 | co nsole.log( "Unable to retrieve the calend ar " + cal endar + ". " + "resp onseText=" | |
1132 | + data.re sponseText ); | |
1133 | al ert("Unabl e to retri eve the ca lendar " + calendar + ". Pleas e contact the system administr ator."); | |
1134 | re turn; | |
1135 | } | |
1136 | }); | |
1137 | ||
1138 | // conso le.log(age ndaColumns ); | |
1139 | // retur n agendaCo lumns; | |
1140 | // retur n itemInfo ; | |
1141 | } | |
1142 | ||
1143 | f unction ge tLookupApp licationRe cordID(rec ordID) { | |
1144 | var curr Url = curr entUrl; | |
1145 | var real Url = curr Url.substr ing(0, cur rUrl.index Of("SitePa ges") - 1) + "/" + f acilityNam e; | |
1146 | var appl icationFac ilityListU rl = realU rl + "/_ap i/web/list s/getbytit le('Applic ationFacil ityLookup' )/items(" | |
1147 | + rec ordID + ") ?$select=A pplication RecordID"; | |
1148 | var appl icationRec ordID; | |
1149 | $.ajax({ | |
1150 | url : applicati onFacility ListUrl, | |
1151 | metho d : "GET", | |
1152 | heade rs : { | |
1153 | "A ccept" : " applicatio n/json; od ata=verbos e" | |
1154 | }, | |
1155 | succe ss : funct ion(data) { | |
1156 | // mapping t he results | |
1157 | ap plicationR ecordID = data.d.App licationRe cordID; | |
1158 | ||
1159 | va r studyRes ult = getS tudy(appli cationReco rdID); | |
1160 | ||
1161 | st udyResult. done(funct ion(result ) { | |
1162 | // result is an SP. List becau se that is what we p assed to | |
1163 | // resolv e()! | |
1164 | var study = result; | |
1165 | ||
1166 | //TODO TA R change A ssignedIRB Administra tor to IRB Administra tor but ne ed to see how to inc orporate | |
1167 | //other c ommittees | |
1168 | var Assig nedIRBAdmi nistrator; | |
1169 | if (study .d.Assigne dIRBAdmini strator.ha sOwnProper ty('Title' )) { | |
1170 | ||
1171 | Assign edIRBAdmin istrator = study.d.A ssignedIRB Administra tor.Title; | |
1172 | } else { | |
1173 | ||
1174 | Assign edIRBAdmin istrator = "N/A"; | |
1175 | } | |
1176 | var Prima ryReviewer ; | |
1177 | if (study .d.Primary Reviewers. hasOwnProp erty('resu lts')) { | |
1178 | // The re is only 1 Primary Reviewer. May need to recode if more th an one is allowed | |
1179 | Primar yReviewer = study.d. PrimaryRev iewers.res ults[0].Ti tle; | |
1180 | } else { | |
1181 | Assign edIRBAdmin istrator = "N/A"; | |
1182 | } | |
1183 | studyArra y.push({ | |
1184 | "Study Title" : s tudy.d.Stu dyTitle, | |
1185 | "Study ID" : stud y.d.Study_ ID, | |
1186 | "PI" : study.d.P rincipalIn vestigator .Title, | |
1187 | "Prima ryReviewer " : Primar yReviewer, | |
1188 | "IRBAd min" : Ass ignedIRBAd ministrato r, | |
1189 | "Delib eration" : study.d.D eliberatio n, | |
1190 | "Decis ion" : stu dy.d.Decis ion, | |
1191 | "Study Type" : st udy.d.Appl icationTyp e | |
1192 | }); | |
1193 | ||
1194 | if (commi tteeName = = "RDC") { | |
1195 | if (st udyArray.l ength == i temInfo.d. ApprovedAp plications Lookup.res ults.lengt h) { | |
1196 | age ndaColumns ["Studies" ] = studyA rray; | |
1197 | gen erateDocx( agendaColu mns); | |
1198 | } | |
1199 | } else if ((committ eeName == "SRS") || (committee Name == "I ACUC") || (committee Name == "S C1") || (c ommitteeNa me == "SC2 ") || (com mitteeName == "SC3") ) { | |
1200 | if (st udyArray.l ength == i temInfo.d. SubmittedA pplication Lookup.res ults.lengt h) { | |
1201 | age ndaColumns ["Studies" ] = studyA rray; | |
1202 | gen erateDocx( agendaColu mns); | |
1203 | } | |
1204 | } else if (committe eName == " IRB") { | |
1205 | if (st udyArray.l ength == i temInfo.d. SubmittedA pplication Lookup.res ults.lengt h) { | |
1206 | age ndaColumns ["Studies" ] = studyA rray; | |
1207 | gen erateDocx( agendaColu mns); | |
1208 | } | |
1209 | } else { | |
1210 | consol e.log('Com mittee Was Not Figur ed Correct ly'); | |
1211 | } | |
1212 | }) ; | |
1213 | ||
1214 | st udyResult. fail(funct ion(result ) { | |
1215 | // result is a stri ng because that is w hat we pas sed to | |
1216 | // reject ()! | |
1217 | var error = result; | |
1218 | console.l og(error); | |
1219 | }) ; | |
1220 | ||
1221 | }, | |
1222 | error : functio n(data) { | |
1223 | al ert(data.r esponseTex t); | |
1224 | } | |
1225 | }); | |
1226 | } | |
1227 | f unction ma pDataObjec t(inData) { | |
1228 | itemInfo = inData; | |
1229 | var comm itteeAtten deeArr = [ ]; | |
1230 | var atte ndeeArr = []; | |
1231 | ||
1232 | var comm itteeAtten deeCount = 0; | |
1233 | var atte ndeeCount = 0; | |
1234 | // can a lso use ag endaColumn s.Title to add prope rty to obj ect | |
1235 | agendaCo lumns["Tit le"] = ite mInfo.d.Ti tle; | |
1236 | // agend aColumns[" Location"] = itemInf o[0].Locat ion; | |
1237 | // no ch ange to wh o created and not mo dified | |
1238 | agendaCo lumns["Eve ntDate"] = moment(it emInfo.d.E ventDate). format("MM M DD YYYY" ); | |
1239 | agendaCo lumns["RDN ame"] = it emInfo.d.A uthor.Titl e; | |
1240 | // 'Star tDate' fou nd | |
1241 | agendaCo lumns["Eve ntTime"] = moment(it emInfo.d.E ventDate). format("h: mm"); | |
1242 | // agend aColumns[" Descriptio n"] = item Info[0].De scription; | |
1243 | // agend aColumns[" Date Creat ed"] = ite mInfo[0].C reated; | |
1244 | ||
1245 | // Evide ntly SRS C alendar is configure d differen tly than I ACUC, IRB, and RDC. This logic | |
1246 | // retri eves the t he Committ eeAttendee s | |
1247 | if ((com mitteeName == "SRS") || (commi tteeName = = "SC1") | | (committ eeName == "SC2") || (committee Name == "S C3")){ | |
1248 | if (i temInfo.d. EventCommi tteeAttend ees.hasOwn Property(' results')) { | |
1249 | co mmitteeAtt endeeCount = itemInf o.d.EventC ommitteeAt tendees.re sults.leng th; | |
1250 | fo r (count = 0; count < committe eAttendeeC ount; coun t++) { | |
1251 | committee AttendeeAr r.push({ | |
1252 | "name" : itemInf o.d.EventC ommitteeAt tendees.re sults[coun t].Title, | |
1253 | "role" : "N/A", | |
1254 | "coi" : "No" | |
1255 | }); | |
1256 | } | |
1257 | } | |
1258 | } else { | |
1259 | if (i temInfo.d. CommitteeA ttendees.h asOwnPrope rty('resul ts')) { | |
1260 | co mmitteeAtt endeeCount = itemInf o.d.Commit teeAttende es.results .length; | |
1261 | fo r (count = 0; count < committe eAttendeeC ount; coun t++) { | |
1262 | committee AttendeeAr r.push({ | |
1263 | "name" : itemInf o.d.Commit teeAttende es.results [count].Ti tle, | |
1264 | "role" : "N/A", | |
1265 | "coi" : "No" | |
1266 | }); | |
1267 | } | |
1268 | } | |
1269 | } | |
1270 | ||
1271 | // Evide ntly SRS C alendar is configure d differen tly than I ACUC, IRB, and RDC. This logic | |
1272 | // retri eves the t he (regula r) Attende es | |
1273 | if (comm itteeName == "SRS") { | |
1274 | if (i temInfo.d. EventAtten dees.hasOw nProperty( 'results') ) { | |
1275 | at tendeeCoun t = itemIn fo.d.Event Attendees. results.le ngth; | |
1276 | fo r (count = 0; count < attendee Count; cou nt++) { | |
1277 | attendeeA rr.push({ | |
1278 | "name" : itemInf o.d.EventA ttendees.r esults[cou nt].Title, | |
1279 | "role" : "N/A", | |
1280 | "coi" : "No" | |
1281 | }); | |
1282 | ||
1283 | } | |
1284 | } | |
1285 | } else i f (committ eeName == "IRB") { | |
1286 | if (i temInfo.d. Participan tsPicker.h asOwnPrope rty('resul ts')) { | |
1287 | at tendeeCoun t = itemIn fo.d.Parti cipantsPic ker.result s.length; | |
1288 | fo r (count = 0; count < attendee Count; cou nt++) { | |
1289 | attendeeA rr.push({ | |
1290 | "name" : itemInf o.d.Partic ipantsPick er.results [count].Ti tle, | |
1291 | "role" : "N/A", | |
1292 | "coi" : "No" | |
1293 | }); | |
1294 | } | |
1295 | } | |
1296 | } else { | |
1297 | if (i temInfo.d. EventAtten dees.hasOw nProperty( 'results') ) { | |
1298 | at tendeeCoun t = itemIn fo.d.Event Attendees. results.le ngth; | |
1299 | fo r (count = 0; count < attendee Count; cou nt++) { | |
1300 | attendeeA rr.push({ | |
1301 | "name" : itemInf o.d.EventA ttendees.r esults[cou nt].Title, | |
1302 | "role" : "N/A", | |
1303 | "coi" : "No" | |
1304 | }); | |
1305 | ||
1306 | } | |
1307 | } | |
1308 | } | |
1309 | ||
1310 | agendaCo lumns["Att endees"] = attendeeA rr; // of type Colle ction | |
1311 | agendaCo lumns["Com mitteeAtte ndees"] = committeeA ttendeeArr ; // of ty pe Collect ion | |
1312 | agendaCo lumns["Com mitteeAtte ndeeCount" ] = commit teeAttende eCount; | |
1313 | agendaCo lumns["Att endeeCount "] = atten deeCount; | |
1314 | processM inutes(ite mInfo); | |
1315 | } | |
1316 | f unction pr ocessStudi es(itemInf o) { | |
1317 | var stud ies = []; | |
1318 | if (comm itteeName == "RDC") { | |
1319 | studi es = itemI nfo.d.Appr ovedApplic ationsLook up.results ; | |
1320 | } else i f ((commit teeName == "IACUC") || (commit teeName == "SRS") || (committe eName == " SC1") || ( committeeN ame == "SC 2") || (co mmitteeNam e == "SC3" )) { | |
1321 | studi es = itemI nfo.d.Subm ittedAppli cationLook up.results ; | |
1322 | } else i f (committ eeName == "IRB") { | |
1323 | studi es = itemI nfo.d.Subm ittedAppli cationLook up.results ; | |
1324 | } | |
1325 | ||
1326 | if (stud ies.length > 0) { | |
1327 | for ( count = 0; count < s tudies.len gth; count ++) { | |
1328 | va r studyID = studies[ count].ID; | |
1329 | ge tLookupApp licationRe cordID(stu dyID); | |
1330 | } | |
1331 | } else { | |
1332 | // no studies a ttached | |
1333 | gener ateDocx(ag endaColumn s); | |
1334 | } | |
1335 | } | |
1336 | f unction pr ocessMinut es(itemInf o) { | |
1337 | // 46816 1: Fix the issue of generate a genda repo rt in RDC Meetings l ist | |
1338 | // Uses Calendar a s source i nstead of meeting mi nute | |
1339 | ||
1340 | minuteAr ray.push({ | |
1341 | "minu teTitle" : itemInfo. Title, | |
1342 | "disc ussion" : itemInfo.D eliberatio n, | |
1343 | "acti on" : item Info.Decis ion | |
1344 | }); | |
1345 | ||
1346 | agendaCo lumns["Min utes"] = m inuteArray ; | |
1347 | ||
1348 | processS tudies(ite mInfo); | |
1349 | } | |
1350 | ||
1351 | f unction ge nerateDocx (dataSet) { | |
1352 | ||
1353 | var Atte ndeeArray = dataSet[ "Attendees "]; | |
1354 | var Comm itteeAtten deeArray = dataSet[" CommitteeA ttendees"] ; | |
1355 | var agen daDate = d ataSet["Ev entDate"]; | |
1356 | var agen daTime = d ataSet["Ev entTime"]; | |
1357 | var agen daStudies = dataSet[ "Studies"] ; | |
1358 | var agen daMinutes = dataSet[ "Minutes"] ; | |
1359 | var comm itteeAtten deeCount = dataSet[" CommitteeA ttendeeCou nt"]; | |
1360 | var atte ndeeCount = dataSet[ "AttendeeC ount"]; | |
1361 | var rdNa me = dataS et["RDName "]; | |
1362 | var temp lateReport File = ""; | |
1363 | var gene ratedFileN ame = ""; | |
1364 | ||
1365 | if (repo rtType == "Agenda") { | |
1366 | templ ateReportF ile = "/si tes/IRBApp lications/ SiteAssets /js/Agenda -Template. docx"; | |
1367 | gener atedFileNa me = commi tteeName + "-Agenda- " + agenda Date + ".d ocx"; | |
1368 | } else i f (reportT ype == "Mi nutes") { | |
1369 | templ ateReportF ile = "/si tes/IRBApp lications/ SiteAssets /js/Meetin g-Minute-T emplate.do cx"; | |
1370 | gener atedFileNa me = commi tteeName + "Agenda-M inutes-" + agendaDat e + ".docx "; | |
1371 | } else { | |
1372 | alert ("Unknown report typ e: " + rep ortType) | |
1373 | } | |
1374 | ||
1375 | // loadF ile("/site s/IRBAppli cations/Si teAssets/j s/Agenda-T emplate.do cx",functi on(err,con tent){ | |
1376 | JSZipUti ls.getBina ryContent( templateRe portFile, function(e rr, conten t) { | |
1377 | doc = new Docxt emplater(c ontent); | |
1378 | var c lientArray = [ { | |
1379 | "n ame" : "Jo hn Smith", | |
1380 | "r ole" : "De veloper", | |
1381 | "c oi" : "Yes " | |
1382 | }, { | |
1383 | "n ame" : "Ka ng Cho", | |
1384 | "r ole" : "Pr inciple", | |
1385 | "c oi" : "No" | |
1386 | } | |
1387 | ]; | |
1388 | doc.s etData({ | |
1389 | "A gendaMinut esTitle" : agendaMin utesTitle, | |
1390 | "a ttendee" : AttendeeA rray, | |
1391 | "c ommitteeat tendee" : CommitteeA ttendeeArr ay, | |
1392 | "C ommitteeAt tendeeCoun t" : commi tteeAttend eeCount, | |
1393 | "A ttendeeCou nt" : atte ndeeCount, | |
1394 | "d ate" : age ndaDate, | |
1395 | "t ime" : age ndaTime, | |
1396 | "S tudies" : agendaStud ies, | |
1397 | "M inutes" : agendaMinu tes, | |
1398 | "R DName" : r dName, | |
1399 | "t itle" : ge neratedFil eName | |
1400 | }); | |
1401 | doc.r ender(); / / apply th em | |
1402 | outpu t = doc.ge tZip().gen erate({ | |
1403 | ty pe : "blob " | |
1404 | }); / / Output t he documen t using | |
1405 | // Da ta-URI | |
1406 | saveA s(output, generatedF ileName); | |
1407 | $('#s pinnerdiv' ).stop(); | |
1408 | ||
1409 | // We need a de lay becaus e if the r eport hasn 't finishe d generati ng the red irect to c ommittee c ould happe n without | |
1410 | // th e save as popup | |
1411 | setIn terval(fun ction() { | |
1412 | wi ndow.histo ry.go(-0); | |
1413 | }, 10 00); | |
1414 | }); | |
1415 | } | |
1416 | ||
1417 | / / function checkSour ceParamete r(){ | |
1418 | / / var sour ceParam = getQuerySt ringParame ter('Sourc e'); | |
1419 | / / if (sour ceParam == null || s ourceParam == '' ){ | |
1420 | / / var this Url = wind ow.locatio n.href; | |
1421 | / / var site Url = this Url.substr ing(0, thi sUrl.index Of("Lists" )-1); | |
1422 | / / window.l ocation.hr ef = URL_a dd_paramet er(thisUrl , 'Source' , siteUrl) ; | |
1423 | / / } | |
1424 | / / } | |
1425 | ||
1426 | f unction ge tStudy(inS tudyID) { | |
1427 | var d = $.Deferred (); | |
1428 | var real Url = curr entUrl.sub string(0, currentUrl .indexOf(" SitePages" ) - 1); | |
1429 | $ | |
1430 | .ajax ({ | |
1431 | ur l : "/site s/IRBAppli cations" | |
1432 | + "/_api/ web/lists/ getbytitle ('Applicat ion')/item s(" | |
1433 | + inStudy ID | |
1434 | + ")?$sel ect=StudyT itle,Appli cationType ,Study_ID, Deliberati on, Princi palInvesti gator/ID, PrincipalI nvestigato r/Title,Pr imaryRevie wers/ID, P rimaryRevi ewers/Titl e, Reviewe rs/ID, Rev iewers/Tit le, Assign edIRBAdmin istrator/I D, Assigne dIRBAdmini strator/Ti tle&$expan d=Principa lInvestiga tor, Prima ryReviewer s, Reviewe rs, Assign edIRBAdmin istrator", | |
1435 | me thod : "GE T", | |
1436 | he aders : { | |
1437 | "Accept" : "applica tion/json; odata=ver bose" | |
1438 | }, | |
1439 | su ccess : fu nction(dat a) { | |
1440 | ||
1441 | d.resolve (data); | |
1442 | }, | |
1443 | er ror : func tion(data) { | |
1444 | // alert( data); | |
1445 | d.reject( "getStudyF ailed"); | |
1446 | } | |
1447 | }); | |
1448 | return d .promise() ; | |
1449 | } | |
1450 | ||
1451 | f unction ge tMinute(in MinutesID) { | |
1452 | var d = $.Deferred (); | |
1453 | var real Url = curr entUrl.sub string(0, currentUrl .indexOf(" SitePages" ) - 1); | |
1454 | $.ajax({ | |
1455 | url : realUrl + "/_api/we b/lists/ge tbytitle(' CommitteeM inutes')/i tems(" + i nMinutesID | |
1456 | + ")?$select =Title,Del iberation, Decision" , | |
1457 | metho d : "GET", | |
1458 | heade rs : { | |
1459 | "A ccept" : " applicatio n/json; od ata=verbos e" | |
1460 | }, | |
1461 | succe ss : funct ion(data) { | |
1462 | d. resolve(da ta); | |
1463 | }, | |
1464 | error : functio n(data) { | |
1465 | // alert(dat a); | |
1466 | d. reject("ge tMinutesFa iled"); | |
1467 | } | |
1468 | }); | |
1469 | return d .promise() ; | |
1470 | } | |
1471 | / / | |
1472 | / / function getQueryS tringParam eter(urlPa rameterKey ) { | |
1473 | ||
1474 | / / var para ms = docum ent.URL.sp lit('?')[1 ].split('& '); | |
1475 | / / var strP arams = '' ; | |
1476 | ||
1477 | / / for (var i = 0; i < params.l ength; i = i + 1) { | |
1478 | / / var sing leParam = params[i]. split('=') ; | |
1479 | / / if (sing leParam[0] == urlPar ameterKey) | |
1480 | / / return d ecodeURICo mponent(si ngleParam[ 1]); | |
1481 | / / } | |
1482 | / / } | |
1483 | ||
1484 | f unction UR L_add_para meter(url, param, va lue) { | |
1485 | var hash = {}; | |
1486 | var pars er = docum ent.create Element('a '); | |
1487 | ||
1488 | parser.h ref = url; | |
1489 | ||
1490 | var para meters = p arser.sear ch.split(/ \?|&/); | |
1491 | ||
1492 | for (var i = 0; i < paramete rs.length; i++) { | |
1493 | if (! parameters [i]) { | |
1494 | co ntinue; | |
1495 | } | |
1496 | ||
1497 | var a ry = param eters[i].s plit('='); | |
1498 | hash[ ary[0]] = ary[1]; | |
1499 | } | |
1500 | ||
1501 | hash[par am] = valu e; | |
1502 | ||
1503 | var list = []; | |
1504 | Object.k eys(hash). forEach(fu nction(key ) { | |
1505 | list. push(key + '=' + has h[key]); | |
1506 | }); | |
1507 | ||
1508 | parser.s earch = '? ' + list.j oin('&'); | |
1509 | return p arser.href ; | |
1510 | } | |
1511 | ||
1512 | / ** | |
1513 | * Displays TMS commi ttee train ing report in new ta b. | |
1514 | * | |
1515 | */ | |
1516 | f unction di splayCommi tteeTraini ngReport() { | |
1517 | ||
1518 | //var tr ainingRepo rtLink = protocol + reportsSe rverName + "/ReportS erver/Page s/" + "Rep ortViewer. aspx?%2fRA MS+Reports %2fTrainin gReport&li stOfIds="; | |
1519 | var trai ningReport Link = dyn amicTraini ngReportUR L; | |
1520 | var idSt rArray = [ ]; | |
1521 | ||
1522 | if (type of ficObj === "undef ined") { | |
1523 | ficOb j = new Fa cilityInfo Collection (); | |
1524 | } | |
1525 | ficObj.g et(facilit yName, fun ction(locf iObj) { | |
1526 | var c i = locfiO bj.getComm itteeGroup (committee Name); | |
1527 | var c omAdminUse rs = ci.ge tUsers(); | |
1528 | for ( var key i n comAdmin Users) { | |
1529 | if (comAdmin Users.hasO wnProperty (key)) | |
1530 | idStrArra y.push(com AdminUsers [key].Id); | |
1531 | } | |
1532 | }); | |
1533 | training ReportLink += idStrA rray.join( ); | |
1534 | training ReportLink += "&Repo rtFor=" + facilityNa me + " " + committee Name + " C ommittee"; | |
1535 | window.o pen(traini ngReportLi nk, "_blan k"); | |
1536 | } | |
1537 | ||
1538 | / / -------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- -------- | |
1539 | </sc ript> | |
1540 | <div cla ss="footer "> | |
1541 | <div c lass="cont ainer"> | |
1542 | <ul class="foo ter-nav"> | |
1543 | <l i><a title ="About" h ref="/site s/IRBAppli cations/Si tePages/Ab out.aspx"> About</a>< /li> | |
1544 | <l i><a title ="Training " href="/s ites/IRBAp plications /SitePages /RAMS%20On line%20Hel p.aspx">Tr aining</a> </li> | |
1545 | <l i><a title ="Help" hr ef="/sites /IRBApplic ations/Sit ePages/RAM S%20Online %20Help.as px">Help</ a></li> | |
1546 | <l i><a title ="FAQs" hr ef="/sites /IRBApplic ations/Sit ePages/FAQ .aspx">FAQ s</a></li> | |
1547 | <l i><a title ="Contact Us" href=" /sites/IRB Applicatio ns/SitePag es/Contact %20Us.aspx ">Contact Us</a></li > | |
1548 | <l i><a title ="Site Map " href="/s ites/IRBAp plications /SitePages /Site%20Ma p.aspx">Si te Map</a> </li> | |
1549 | <l i><a title ="Disclaim er" href=" /sites/IRB Applicatio ns/SitePag es/Disclai mer.aspx"> Disclaimer </a></li> | |
1550 | <l i><a title ="Privacy/ Accessibil ity" href= "/sites/IR BApplicati ons/SitePa ges/Access ibility.as px">Privac y | |
1551 | / Access ibility</a ></li> | |
1552 | <l i><a oncli ck="displa yVersion() ;return fa lse;" titl e="Version " href="#" >Version</ a></li> | |
1553 | <l i><a title ="Descript ion" href= "/sites/IR BApplicati ons/SitePa ges/Descri ption.aspx ">Descript ion</a></l i> | |
1554 | <li><a tit le="VA Hom e" href="h ttp:// DNS . URL ">VA Home< /a></li> | |
1555 | </ul > | |
1556 | <p i d="RAMSCop yright" cl ass="pull- right stro ng"></p> | |
1557 | </div> | |
1558 | </div> | |
1559 | <!-- Boo tstrap cor e JavaScri pt | |
1560 | ====== ========== ========== ========== ========== ==== --> | |
1561 | <!-- Pla ced at the end of th e document so the pa ges load f aster --> | |
1562 | <script src="../Si teAssets/j s/bootstra p.min.js" type="text /javascrip t"></scrip t> | |
1563 | <script src="../Si teAssets/j s/tooltip. js" type=" text/javas cript"></s cript> | |
1564 | <!-- IE1 0 viewport hack for Surface/de sktop Wind ows 8 bug --> | |
1565 | <script src="../Si teAssets/j s/ie10-vie wport-bug- workaround .js" type= "text/java script"></ script> | |
1566 | <script type="text /javascrip t"> | |
1567 | d ocument.ge tElementBy Id("profil e").href = mySitesSe rverName; | |
1568 | </sc ript> | |
1569 | </body> | |
1570 | </html> |
Araxis Merge (but not the data content of this report) is Copyright © 1993-2016 Araxis Ltd (www.araxis.com). All rights reserved.