Explorar o código

Adding redirecting modifiers to visit new to control where browser is headed after CRF interaction

Andrej hai 3 semanas
pai
achega
530180a3ff
Modificáronse 2 ficheiros con 11 adicións e 2 borrados
  1. 2 1
      views/visitNew.html
  2. 9 1
      web/crf/crfVisitNew.js

+ 2 - 1
views/visitNew.html

@@ -36,7 +36,8 @@ function init(){
 	document.getElementById("crfRefId").innerHTML=crfRef;
    crfVisit.crfRef=crfRef;
    crfVisit.masterForm="visitForm";
-
+   crfVisit.redirectQuery=searchParams.get('redirectQuery');
+   crfVisit.redirectSchema=searchParams.get('redirectSchema');
 
 	crfVisit.formId=searchParams.get("formId");
 	crfVisit.role=searchParams.get('role');	

+ 9 - 1
web/crf/crfVisitNew.js

@@ -1658,6 +1658,14 @@ function(){
 
 crfVisit.redirect=
 function(){
+
+   if ("redirectQuery" in this){
+      this.print('Redirecting to query '+this.redirectQuery);
+      let pars={'schemaName':this.redirectSchema,'query.queryName':this.redirectQuery};
+      window.location=LABKEY.ActionURL.buildURL("query", "executeQuery", LABKEY.ActionURL.getContainer(),pars);
+      return;
+   }
+
 	let formUrl="participantPortal";
 	let params=new Object();
 	params.name=formUrl;
@@ -1698,7 +1706,7 @@ function(){
 
    let staticData=new Object();
    let titles=new Object();
-   staticData['version']='0.16.4'	
+   staticData['version']='0.16.5'	
    titles['version']='Software version';
    let varRows=crfSetup.getRows('crfStaticVariables');
    for (let i=0;i<varRows.length;i++){