|
@@ -143,9 +143,6 @@ function fullAccessSetup(config,listName){
|
|
|
setup.filters['crfRef']=getCRFref(config);
|
|
|
setup.getInputId=function(vName){return listName+"_"+vName;}
|
|
|
setup.addApply="Save";
|
|
|
- //not neccesarily unique
|
|
|
- //setup.unique=true;
|
|
|
- //no addApply
|
|
|
return setup;
|
|
|
|
|
|
}
|
|
@@ -289,21 +286,28 @@ function generateSection(config, sectionName, sectionTitle, listName, additional
|
|
|
|
|
|
}
|
|
|
if (debug) print(config,"generate master table");
|
|
|
+
|
|
|
|
|
|
let setup=fullAccessSetup(config,listName);
|
|
|
+ if ("reviewMode" in config)
|
|
|
+ setup=readonlySetup(config);
|
|
|
//master table is unique per visit
|
|
|
setup.unique=true;
|
|
|
- if (config.review)
|
|
|
- setup=readonlySetup(config);
|
|
|
generateTable(config,listName,divTable.id,true,additionalData,setup);
|
|
|
|
|
|
if (debug) print(config,"generate master table: done");
|
|
|
+
|
|
|
+ let generateSubTable=true;
|
|
|
+ if ("reviewMode" in config) generateSubTable=false;
|
|
|
+ if (! ("showFlag" in additionalData) ) generateSubTable=false;
|
|
|
|
|
|
- if ("showFlag" in additionalData){
|
|
|
+ if (generateSubTable){
|
|
|
let qName=additionalData.queryName;
|
|
|
let dName=additionalData.divName;
|
|
|
+
|
|
|
+
|
|
|
let setup=fullAccessSetup(config,qName);
|
|
|
- if (config.review)
|
|
|
+ if ("reviewMode" in config)
|
|
|
setup=readonlySetup(config);
|
|
|
generateTable(config,qName,dName,false,additionalData,setup);
|
|
|
}
|
|
@@ -351,6 +355,14 @@ function generateReview(config,data,divReviewId,divReviewListId, listName){
|
|
|
if (vName=="ModifiedBy") return true;
|
|
|
return false;};
|
|
|
reviewSetup.addApply="Add Review";
|
|
|
+
|
|
|
+ let generateTableFlag=true;
|
|
|
+ if ("reviewMode" in config && config.reviewMode == "APPROVED" ){
|
|
|
+ delete reviewSetup.addApply;
|
|
|
+ reviewSetup.readonlyFlag=function(vName){return false;}
|
|
|
+ generateTableFlag=false;
|
|
|
+ }
|
|
|
+
|
|
|
reviewSetup.filters=new Object();
|
|
|
reviewSetup.filters["crfRef"]=getCRFref(config);
|
|
|
reviewSetup.filters["queryName"]=listId;//entry in reviewComments list is queryname, all in small caps
|
|
@@ -366,6 +378,9 @@ function generateReview(config,data,divReviewId,divReviewListId, listName){
|
|
|
print(config,msg);
|
|
|
}
|
|
|
updateListDisplay(config,divReviewListId,"reviewComments",reviewSetup.filters,true);
|
|
|
+
|
|
|
+ if (! generateTableFlag) return;
|
|
|
+
|
|
|
generateTable(config,"reviewComments",divReviewId,false,new Object(),reviewSetup);
|
|
|
}
|
|
|
|
|
@@ -1452,6 +1467,8 @@ function generateMasterForm(config){
|
|
|
configSelectRows.containerPath=config.containerPath;
|
|
|
configSelectRows.schemaName='lists';
|
|
|
configSelectRows.queryName=config.setupQueryName;
|
|
|
+ //this is new
|
|
|
+ configSelectRows.formName=config.formName;
|
|
|
configSelectRows.success=function(data){generateForm(config,data);};
|
|
|
configSelectRows.failure=onFailure;//function(errorTxt){print(config,"generateForm fail" + errorTxt)};
|
|
|
LABKEY.Query.selectRows(configSelectRows);
|
|
@@ -1460,11 +1477,13 @@ function generateMasterForm(config){
|
|
|
print(config,"Generating buttons");
|
|
|
|
|
|
//requires onSubmit
|
|
|
- if (config.review){
|
|
|
+ if ("reviewMode" in config){
|
|
|
+ if (config.reviewMode=="REVIEW"){
|
|
|
|
|
|
- generateButton(config,"submitDiv","Complete submission","Upload to database",onDatabaseUpload,config);
|
|
|
- generateButton(config,"submitDiv","Review submission","Ask for further review",onUpdateForReview,config);
|
|
|
- generateButton(config,"submitDiv","Remove submission","Remove CRF form",onRemoveCRF,config);
|
|
|
+ generateButton(config,"submitDiv","Complete submission","Upload to database",onDatabaseUpload,config);
|
|
|
+ generateButton(config,"submitDiv","Review submission","Ask for further review",onUpdateForReview,config);
|
|
|
+ generateButton(config,"submitDiv","Remove submission","Remove CRF form",onRemoveCRF,config);
|
|
|
+ }
|
|
|
}
|
|
|
else{
|
|
|
generateButton(config,"submitDiv","Complete submission","Submit",onSubmit,config);
|